size_t 类型

size _t 为了增强程序的可移植性,便有了size_t ,不同系统上,定义size_t可能不一样。

经测试发现,在32位系统中size_t是4字节的,在64位系统中,size_t是8字节的,这样利用该类型可以增加程序移植性。

size_t的定义 

它的定义在/usr/include/linux/types.h

                    typedef _kernel_size_t size_t;

 

跟体系结构相关                           

而__kernel_size_t 定义在 /usr/include/asm/posix_types.h                          

安装的是内核的源码

asm-i386/posix_types.h

              typedef unsigned int __kernel_size_t;

asm-1a64/posix_types.h

              typedef unsigned long kernel_size_t;

 

size_t一般用来表示一种计数,比如有多少东西被拷贝等。例如:sizeof操作符的结果类型是size_t,该类型保证能容纳实现所建立的最大对象的字节大小。 它的意义大致是“适于计量内存中可容纳的数据项目个数的无符号整数类型”。所以,它在数组下标和内存管理函数之类的地方广泛使用。

posted @ 2013-02-27 14:07  only_eVonne  阅读(32374)  评论(0编辑  收藏  举报