size_t
De cppreference.com
| Definido en el archivo de encabezado <stddef.h>
|
||
| Definido en el archivo de encabezado <stdio.h>
|
||
| Definido en el archivo de encabezado <stdlib.h>
|
||
| Definido en el archivo de encabezado <string.h>
|
||
| Definido en el archivo de encabezado <time.h>
|
||
| Definido en el archivo de encabezado <uchar.h>
|
(desde C11) |
|
| Definido en el archivo de encabezado <wchar.h>
|
(desde C95) |
|
typedef /*implementacion-definida*/ size_t;
|
||
size_t es el tipo entero sin signo del resultado de sizeof , alignof (desde C11) y offsetof, dependiendo del modelo de datos.
Observaciones
size_t puede almacenar el tamaño máximo de un objeto de cualquier tipo teóricamente posible (incluido una matriz).
size_t se utiliza comúnmente para la indexación de matrices y el conteo de bucles. Los programas que utilizan otros tipos, como unsigned int, para la indexación de matrices pueden fallar, por ejemplo, en los sistemas de 64 bits cuando el índice excede a UINT_MAX o si se basa en la aritmética modular de 32 bits.
Ejemplo
Ejecuta este código
#include <stdio.h>
#include <stddef.h>
#include <stdint.h>
int main(void)
{
const size_t N = 100;
int numbers[N];
for (size_t ndx = 0; ndx < N; ++ndx)
numbers[ndx] = ndx;
printf("SIZE_MAX = %zu\n", SIZE_MAX);
size_t size = sizeof numbers;
printf("size = %zu\n", size);
}
Posible salida:
SIZE_MAX = 18446744073709551615
size = 400
Véase también
tipo entero con signo devuelto al restar dos punteros Original: signed integer type returned when subtracting two pointers The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (typedef) | |
Desplazamiento en bytes desde el inicio de una estructura hasta el miembro especificado Original: byte offset from the beginning of a struct type to specified member The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (macro de función) | |
Documentación de C++ para size_t
| |