今天试验unix高级程序设计四章的习题4.18时,发现size_t会溢出。于是想找一下size_t的定义。
使用size_t定义要include <sys/types.h> 但实际上在sys/types.h根本没有size_t的定义,只看到#define __need_size_t然后就又include了<stddef.h>, 本想在这里面吧,在看到
#define __SIZE_TYPE__ long unsigned int
而下面定义了
typedef __SIZE_TYPE__ size_t
如果是用这个定义的话,那么size_t就应该是long unsigned int,那么它应当可以用4294967295这么大的数了。但实际使用中发现,size_t实际上只有 long int,而不是long unsigned int。
那么请问实际上的size_t是在哪儿定义的?
请问size_t是在哪儿定义的
-
- 帖子: 43
- 注册时间: 2007-04-21 9:36
-
- 帖子: 7
- 注册时间: 2007-01-25 19:25
-
- 帖子: 43
- 注册时间: 2007-04-21 9:36