Preguntas etiquetadas con sizeof

sizeof se refiere al operador estándar C / C ++ para devolver el tamaño en bytes de una expresión o tipo de datos.

505
¿Por qué sizeof (x ++) no incrementa x?

Aquí está el código compilado en dev c ++ windows: #include <stdio.h> int main() { int x = 5; printf("%d and ", sizeof(x++)); // note 1 printf("%d\n", x); // note 2 return 0; } Espero xser 6 después de ejecutar la nota 1 . Sin embargo, la salida es: 4 and 5 ¿Alguien puede explicar...

129
¿Por qué sizeof (my_arr) [0] compila e igual sizeof (my_arr [0])?

¿Por qué se compila este código? _Static uint32_t my_arr[2]; _Static_assert(sizeof(my_arr) == 8, ""); _Static_assert(sizeof(my_arr[0]) == 4, ""); _Static_assert(sizeof(my_arr)[0] == 4, ""); Las primeras 2 afirmaciones son obviamente correctas, pero hubiera esperado que la última línea fallara, ya...

109
tamaño de un solo miembro de estructura en C

Estoy tratando de declarar una estructura que depende de otra estructura. Quiero usar sizeofpara ser seguro / pedante. typedef struct _parent { float calc ; char text[255] ; int used ; } parent_t ; Ahora quiero declarar una estructura child_tque tenga el mismo tamaño que parent_t.text. ¿Cómo...

77
¿Cuál es el tamaño del vacío?

¿Qué produciría esta declaración? void *p = malloc(sizeof(void)); Editar: una extensión de la pregunta. Si sizeof (void) produce 1 en el compilador GCC, entonces se asigna 1 byte de memoria y el puntero p apunta a ese byte y ¿se incrementaría p ++ a 0x2346? Suponga que p fuera 0x2345....