glibc之数据类型定义分析

  本文主要涉及到的库文件位于/usr/include/bits目录下,文件包括wordsize.h,types.h,typesizes.h 等文件。

  wordsize.h中主要定义了当前机器的字大小。内容如下:

  ...

  #define __WORDSIZE  32

  ...

 

  这里的宏应该是安装系统的时候,确定的机器字的大小,然后才生成对应的宏。这个宏会在types.h中作为判定条件,从而定义相应数据类型。我们可以看下types.h文件有如下内容:

 

   99 #define __S16_TYPE      short int
100 #define __U16_TYPE      unsigned short int
101 #define __S32_TYPE      int
102 #define __U32_TYPE      unsigned int
103 #define __SLONGWORD_TYPE    long int
104 #define __ULONGWORD_TYPE    unsigned long int

//以上类型定义与机器字长度无关
105 #if __WORDSIZE == 32
106 # define __SQUAD_TYPE       __quad_t
107 # define __UQUAD_TYPE       __u_quad_t
108 # define __SWORD_TYPE       int
109 # define __UWORD_TYPE       unsigned int
110 # define __SLONG32_TYPE 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值