基础知识 | 每日一练(3)

2019-06-05 15:29:54 浏览数 (2)

基础知识练习

——菜根谭

学生:我一般都用typedef定义int 16 和int 32。然后根据实际的机器环境把他们定义维int,short,long等类型。这这样是不是所有的问题都可以解决?

小编:因为C语言没有精确定义类型的大小,所有如果真的需要精确控制类型大小,按照你说的确实可以,但是也有几点需要注意。

1、在某些机器上可能没有严格的对应关系。

2、如果定义int 16和int 32只是为了表明“至少”这么长,则没有任何意义。

3、typedef定义对于字节顺序问题不能提供任何帮助。

4、标准头文件<inttypes.h>已经定义了标准类型名称int 16_t和uint32_t等。

0 人点赞