¿Tiene int el mismo tipo que unsigned o signed?¿Es int lo mismo que unsigned o signed?
Respuesta
Llanura int
es la misma que signed
es lo mismo que signed int
int
s son firmados por defecto.
C++ estándar 3.9.1/2:
Hay cuatro tipos enteros con signo: “long int” “signed char”, “short int”, “int”, y < ...>
C++ estándar 3.9.1/3:
Para cada uno de los tipos de enteros con signo, hay correo Xists correspondiente (pero diferente) sin signo de tipo entero: “unsigned char”, “unsigned short int”, “unsigned int”, y “unsigned long int ,” < ...>
Por lo tanto, sizeof(int)
es igual a sizeof(unsigned)
. Pero boost::is_same< int, unsigned >::value
es falso.
+1 por citar Norma. – Cumbayah
signed int
es lo mismo que int
y especifica un valor entero que puede tener valores positivos y negativos.
unsigned int
por el contrario, solo pueden tener valores positivos, por lo que el mayor valor positivo es mucho mayor que el de signed int
.
En realidad, el * rango * de valores es exactamente del mismo tamaño, simplemente se desplazó para que el valor mínimo sea 0. –
Tiene razón, esa fue una mala elección de palabras. Corregido;) –
ints
están firmados por defecto, al igual que longs
.
Por lo tanto, int
, signed
y signed int
son lo mismo.
Similarmente long
y signed long
son lo mismo.
chars
por el contrario, no tienen un valor predeterminado. Las implementaciones pueden considerarlos como firmados o no (muchos tienen un interruptor de línea de comando para elegir). char
, signed char
y unsigned char
se consideran tres tipos distintos de resolución de sobrecarga, instancias de plantilla y otros lugares.
La última oración es muy restringida. No es solo resolución de sobrecarga, está en todas partes. P.ej. también como argumentos de plantilla.Así 'std :: vector
@MSalters: Buen punto, actualizado. –
- 1. ¿Cuál es la diferencia entre unsigned int y signed int en C?
- 2. ¿Está `int` por defecto` signed long int` en C++?
- 3. Consenso? MySQL, Signed VS Unsigned Primary/Foreign Keys
- 4. C++ uint, unsigned int, int
- 5. Se define el desbordamiento para VHDL numeric_std signed/unsigned
- 6. int dividido por unsigned int causando vuelco
- 7. Compare int y unsigned int
- 8. Unsigned Int en Java
- 9. volatile unsigned int * const
- 10. Desbordamiento de Unsigned Int
- 11. ¿Es '<? =' Lo mismo que 'eco'?
- 12. ¿Por qué un unsigned int 1 es menor que un char y -1?
- 13. puntero NULL es lo mismo que desasignarlo?
- 14. ¿Es 'yield self' lo mismo que instance_eval?
- 15. ¿Es LinqToSQL lo mismo que Linq?
- 16. ¿No es 00.0 lo mismo que 0.0?
- 17. ¿DbContext es lo mismo que DataContext?
- 18. ¿Corba es lo mismo que SOA?
- 19. ¿Es dp lo mismo que dip?
- 20. ¿Currying es lo mismo que sobrecargar?
- 21. ¿Es "extend self" lo mismo que "module_function"?
- 22. YARD no es lo mismo que RDoc?
- 23. ¿Es AppendHeader exactamente lo mismo que AddHeader?
- 24. C# unsigned int valor predeterminado
- 25. C - unsigned int a unsigned char array conversion
- 26. lectura 'unsigned int' usando 'cin'
- 27. g ++ __static_initialization_and_destruction_0 (int, int) - ¿qué es lo
- 28. C Unsigned int que proporciona un valor negativo?
- 29. C struct ++ que contiene unsigned char e int fallo
- 30. ¿Por qué obtengo el mismo valor cuando imprimo este int?
Algunos (¿todos?) Compiladores tienen un interruptor para cambiar el valor predeterminado a sin firmar. En MSVC, es/J. –
FYI El compilador CCS para controladores Microchip PIC no tiene firma por defecto. Argh! – kenny
El modificador del compilador/J afecta a char, no a int. "char" puede o no estar firmado. "char", "signed char" y "unsigned char" son siempre tipos distintos, independientemente de si se ha firmado o no "char". –