关于基础数据类型的最后讨论

@Unix网络编程


数据类型   ILP32模型   LP64模型
char        8           8
short       16          16
int         32          32
long        32          64
pointer     32          64

32位Unix一般为ILP32模型

64位Unix最流行LP64模型

64位最关键的部分在于我们不再能把指针存放到一个整数中。

现在我们最关心的是:

ANSI C创造了size_t类型,他在32位下是32位值,而在64位下必须是64位值,
然而在网络API与XTI结构中的问题是,当系统平台从32位转变到64位时,他们不需要64位数据类型。

为了处理这种方法,套接口API使用socklen_t数据类型作为接口地址结构长度,而XTI使用t_scalar_t和t_uscalar_t

此条目发表在C, 系统, 编程分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。 必填项已用*标注