Red de conocimientos sobre prescripción popular - Conocimiento de perdida de peso - ¿Cuántos bits ocupa cada tipo de datos en lenguaje C?

¿Cuántos bits ocupa cada tipo de datos en lenguaje C?

(1) Plataforma de 32 bits:

Dividida en firmada y sin firmar.

Tipo con signo:

Corto ocupa dos bytes de memoria, que van desde -2 15 ~ (2 15-1).

Int ocupa cuatro bytes de memoria, que van desde -2 31 ~ (2 31-1).

Long ocupa cuatro bytes de memoria, que van desde -2 31 a 2 31-1.

Tipo sin signo: El bit más alto no representa el bit de signo.

El corto sin firmar ocupa dos bytes de memoria, que van de 0 a 2 16-1.

Unsigned int ocupa cuatro bytes de memoria, que van de 0 a 2 32-1.

El tipo largo sin firmar ocupa cuatro bytes de memoria, que van de 0 a 2 32-1.

Variables reales:

Hay dos formas de punto flotante de precisión simple y punto flotante de doble precisión:

Flotante: cuatro bytes, que proporcionan 7 ~. 8 cifras significativas.

Doble: toma ocho bytes y proporciona entre 15 y 16 cifras significativas.

(2) Plataforma de 16 bits:

1) Entero (tipo básico): El especificador de tipo es int y ocupa 2 bytes de memoria.

2) Tipo entero corto: El especificador de tipo es short int o short. Los bytes ocupados y el rango de valores son los mismos que los de un entero (tipo básico).

3) entero largo: El especificador de tipo es long int o long, ocupando 4 bytes de memoria.

Sin firmar: El especificador de tipo no está firmado.

Los tipos sin signo pueden coincidir con los tres tipos anteriores:

Varios tipos sin signo ocupan la misma cantidad de bytes en el espacio de memoria que los tipos con signo correspondientes. Sin embargo, debido a que se omite el bit de signo, no puede representar números negativos.

Variables reales:

Se pueden dividir en precisión simple (tipo punto flotante), precisión doble (tipo doble), precisión doble larga (tipo doble largo).

El tipo de precisión simple ocupa 4 bytes (32 bits) de espacio de memoria, su rango de valores es 3,4e-38 ~ 3,4e+38 y solo puede proporcionar 7 dígitos significativos.

El tipo de doble precisión ocupa 8 bytes (64 bits) de espacio de memoria, su rango de valores es 1,7e-308 ~ 1,7e+308 y puede proporcionar 16 dígitos significativos.

Espacio de memoria de doble precisión de 16 bytes (128 bits) de largo, que proporciona entre 18 y 19 dígitos efectivos.