<QtProcessorDetection> - Architecture-specific Macro Definitions

El fichero de cabecera <QtProcessorDetection> incluye varias macros específicas de arquitectura. Más...

Header: #include <QtProcessorDetection>

Macros

Descripción detallada

El fichero de cabecera <QtProcessorDetection> declara un rango de macros (Q_PROCESSOR_*) que se definen si la aplicación se compila para arquitecturas de procesador especificadas. Por ejemplo, la macro Q_PROCESSOR_X86 se define si la aplicación se compila para procesadores x86.

El propósito de estas macros es permitir a los programadores añadir código específico de arquitectura a su aplicación.

Documentación de macros

QT_POINTER_SIZE

Se expande al tamaño de un puntero en bytes (4 u 8). Equivale a sizeof(void *) pero puede utilizarse en una directiva de preprocesador.

Q_BIG_ENDIAN

Esta macro representa un valor que puede comparar con la macro Q_BYTE_ORDER para determinar el carácter endian de su sistema. En un sistema big-endian, el byte más significativo se almacena en la dirección más baja. Los demás bytes siguen en orden decreciente de importancia.

#if Q_BYTE_ORDER == Q_BIG_ENDIAN
//...
#endif

Véase también Q_BYTE_ORDER y Q_LITTLE_ENDIAN.

Q_BYTE_ORDER

Esta macro puede usarse para determinar el orden de bytes que usa tu sistema para almacenar datos en memoria, es decir, si tu sistema es little-endian o big-endian. Se establece por Qt a una de las macros Q_LITTLE_ENDIAN o Q_BIG_ENDIAN. Normalmente no tendrá que preocuparse por endian-ness, pero podría, por ejemplo, si usted necesita saber qué byte de un entero o carácter UTF-16 se almacena en la dirección más baja. Endian-ness es importante en redes, donde ordenadores con diferentes valores para Q_BYTE_ORDER deben pasar datos de un lado a otro.

Utilice esta macro como en los siguientes ejemplos.

#if Q_BYTE_ORDER == Q_BIG_ENDIAN
//...
#endif

//or

#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
//...
#endif

Véase también Q_BIG_ENDIAN y Q_LITTLE_ENDIAN.

Q_LITTLE_ENDIAN

Esta macro representa un valor que puede comparar con la macro Q_BYTE_ORDER para determinar el carácter endian de su sistema. En un sistema little-endian, el byte menos significativo se almacena en la dirección más baja. Los demás bytes siguen en orden creciente de importancia.

#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
//...
#endif

Véase también Q_BYTE_ORDER y Q_BIG_ENDIAN.

Q_PROCESSOR_X86

Definido si la aplicación está compilada para procesadores x86. Qt actualmente soporta dos variantes x86: Q_PROCESSOR_X86_32 y Q_PROCESSOR_X86_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_S390

Definido si la aplicación se compila para procesadores S/390. Qt soporta una variante opcional de S/390: Q_PROCESSOR_S390_X.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_ALPHA

Definido si la aplicación está compilada para procesadores Alpha.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_ARM

Definido si la aplicación se compila para procesadores ARM. Qt actualmente soporta tres revisiones ARM opcionales: Q_PROCESSOR_ARM_V5, Q_PROCESSOR_ARM_V6, y Q_PROCESSOR_ARM_V7.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_ARM_V5

Se define si la aplicación se compila para procesadores ARMv5. La macro Q_PROCESSOR_ARM también se define cuando se define Q_PROCESSOR_ARM_V5.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_ARM_V6

Se define si la aplicación se compila para procesadores ARMv6. Las macros Q_PROCESSOR_ARM y Q_PROCESSOR_ARM_V5 también se definen cuando se define Q_PROCESSOR_ARM_V6.

Ver también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_ARM_V7

Se define si la aplicación se compila para procesadores ARMv7. Las macros Q_PROCESSOR_ARM, Q_PROCESSOR_ARM_V5, y Q_PROCESSOR_ARM_V6 también están definidas cuando Q_PROCESSOR_ARM_V7 está definido.

Ver también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_AVR32

Se define si la aplicación se compila para procesadores AVR32.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_BLACKFIN

Se define si la aplicación se compila para procesadores Blackfin.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_HPPA

Se define si la aplicación se compila para procesadores PA-RISC.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_IA64

Se define si la aplicación se compila para procesadores IA-64. Esto incluye todos los procesadores Itanium e Itanium 2.

Véase también QSysInfo::buildCpuArchitecture().

[since 6.5] Q_PROCESSOR_LOONGARCH

Definida si la aplicación está compilada para procesadores LoongArch.

Esta macro se introdujo en Qt 6.5.

Véase también QSysInfo::buildCpuArchitecture().

[since 6.5] Q_PROCESSOR_LOONGARCH_32

Se define si la aplicación se compila para procesadores LoongArch de 32 bits. La macro Q_PROCESSOR_LOONGARCH también se define cuando se define Q_PROCESSOR_LOONGARCH_32.

Esta macro se introdujo en Qt 6.5.

Véase también QSysInfo::buildCpuArchitecture().

[since 6.5] Q_PROCESSOR_LOONGARCH_64

Se define si la aplicación se compila para procesadores LoongArch de 64 bits. La macro Q_PROCESSOR_LOONGARCH también se define cuando se define Q_PROCESSOR_LOONGARCH_64.

Esta macro se introdujo en Qt 6.5.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_M68K

Definido si la aplicación está compilada para procesadores Motorola 68000.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS

Definido si la aplicación está compilada para procesadores MIPS. Qt soporta actualmente siete revisiones de MIPS: Q_PROCESSOR_MIPS_I, Q_PROCESSOR_MIPS_II, Q_PROCESSOR_MIPS_III, Q_PROCESSOR_MIPS_IV, Q_PROCESSOR_MIPS_V, Q_PROCESSOR_MIPS_32, y Q_PROCESSOR_MIPS_64.

Ver también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_32

Se define si la aplicación se compila para procesadores MIPS32. Las macros Q_PROCESSOR_MIPS, Q_PROCESSOR_MIPS_I, y Q_PROCESSOR_MIPS_II también se definen cuando Q_PROCESSOR_MIPS_32 está definido.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_64

Se define si la aplicación se compila para procesadores MIPS64. Las macros Q_PROCESSOR_MIPS, Q_PROCESSOR_MIPS_I, Q_PROCESSOR_MIPS_II, Q_PROCESSOR_MIPS_III, Q_PROCESSOR_MIPS_IV, y Q_PROCESSOR_MIPS_V también se definen cuando se define Q_PROCESSOR_MIPS_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_I

Se define si la aplicación se compila para procesadores MIPS-I. La macro Q_PROCESSOR_MIPS también se define cuando se define Q_PROCESSOR_MIPS_I.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_II

Se define si la aplicación se compila para procesadores MIPS-II. Las macros Q_PROCESSOR_MIPS y Q_PROCESSOR_MIPS_I también se definen cuando se define Q_PROCESSOR_MIPS_II.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_III

Se define si la aplicación se compila para procesadores MIPS-III. Las macros Q_PROCESSOR_MIPS, Q_PROCESSOR_MIPS_I, y Q_PROCESSOR_MIPS_II también se definen cuando Q_PROCESSOR_MIPS_III está definido.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_IV

Se define si la aplicación se compila para procesadores MIPS-IV. Las macros Q_PROCESSOR_MIPS, Q_PROCESSOR_MIPS_I, Q_PROCESSOR_MIPS_II, y Q_PROCESSOR_MIPS_III también se definen cuando se define Q_PROCESSOR_MIPS_IV.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_MIPS_V

Se define si la aplicación se compila para procesadores MIPS-V. Las macros Q_PROCESSOR_MIPS, Q_PROCESSOR_MIPS_I, Q_PROCESSOR_MIPS_II, Q_PROCESSOR_MIPS_III, y Q_PROCESSOR_MIPS_IV también se definen cuando se define Q_PROCESSOR_MIPS_V.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_POWER

Definido si la aplicación está compilada para procesadores POWER. Qt actualmente soporta dos variantes Power: Q_PROCESSOR_POWER_32 y Q_PROCESSOR_POWER_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_POWER_32

Se define si la aplicación se compila para procesadores Power de 32 bits. La macro Q_PROCESSOR_POWER también se define cuando se define Q_PROCESSOR_POWER_32.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_POWER_64

Se define si la aplicación se compila para procesadores Power de 64 bits. La macro Q_PROCESSOR_POWER también se define cuando se define Q_PROCESSOR_POWER_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_RISCV

Definido si la aplicación está compilada para procesadores RISC-V. Qt actualmente soporta dos variantes de RISC-V: Q_PROCESSOR_RISCV_32 y Q_PROCESSOR_RISCV_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_RISCV_32

Se define si la aplicación se compila para procesadores RISC-V de 32 bits. La macro Q_PROCESSOR_RISCV también se define cuando se define Q_PROCESSOR_RISCV_32.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_RISCV_64

Se define si la aplicación se compila para procesadores RISC-V de 64 bits. La macro Q_PROCESSOR_RISCV también se define cuando se define Q_PROCESSOR_RISCV_64.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_S390_X

Se define si la aplicación se compila para procesadores S/390x. La macro Q_PROCESSOR_S390 también se define cuando se define Q_PROCESSOR_S390_X.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_SH

Definido si la aplicación se compila para procesadores SuperH. Qt actualmente soporta una revisión SuperH: Q_PROCESSOR_SH_4A.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_SH_4A

Se define si la aplicación se compila para procesadores SuperH 4A. La macro Q_PROCESSOR_SH también se define cuando se define Q_PROCESSOR_SH_4A.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_SPARC

Definido si la aplicación se compila para procesadores SPARC. Qt actualmente soporta una revisión SPARC opcional: Q_PROCESSOR_SPARC_V9.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_SPARC_V9

Se define si la aplicación se compila para procesadores SPARC V9. La macro Q_PROCESSOR_SPARC también se define cuando se define Q_PROCESSOR_SPARC_V9.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_X86_32

Se define si la aplicación se compila para procesadores x86 de 32 bits. Esto incluye todos los procesadores i386, i486, i586 e i686. La macro Q_PROCESSOR_X86 también se define cuando se define Q_PROCESSOR_X86_32.

Véase también QSysInfo::buildCpuArchitecture().

Q_PROCESSOR_X86_64

Se define si la aplicación se compila para procesadores x86 de 64 bits. Esto incluye todos los procesadores AMD64, Intel 64 y otros procesadores x86_64/x64. La macro Q_PROCESSOR_X86 también se define cuando se define Q_PROCESSOR_X86_64.

Véase también QSysInfo::buildCpuArchitecture().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.