2011-02-04 14 views

Respuesta

8

"t" significa "tipo" (o para algunas personas, typedef, que es el comando utilizado para crearlas). size_t es el tipo utilizado para especificar tamaños de memoria. time_t por otro lado, es el tipo utilizado para especificar períodos de tiempo. Por lo general, se refieren al mismo tipo subyacente (un entero de 64 o 32 bits, dependiendo de la plataforma), pero la etiqueta ayuda a mantenerlos conceptualmente rectos para que los detalles de implementación puedan ser elaborados por el compilador.

Por ejemplo, time_t solía ser un número entero de 32 bits, lo que significa que el reloj diera la vuelta en 2038. Sin embargo, en la mayoría de las arquitecturas de 64 bits, han ampliado time_t ser un número entero de 64 bits, lo que significa que los sistemas de 64 bits no tendrán un problema de "año-2038". Como el código que trata con marcas de tiempo Unix usa el nombre de tipo time_t en lugar de int para referirse a estos valores, todo "solo funcionará" cuando simplemente recompile el código para su nueva arquitectura.

9

En mi experiencia, el _t es un sufijo convencional para los tipos declarados utilizando typedef.

p. Ej.

typedef int myInt_t; 

etc ...

Cuestiones relacionadas