urenai 发表于 2024-1-26 16:33:22

留个脚印

在Windows Socket编程中,socket()函数的返回值是一个表示套接字描述符的数据类型,它并不依赖于32位或64位操作系统,而是由系统API定义。在Windows系统上,套接字描述符通常是由SOCKET类型来表示的,这是一个与平台相关的整数类型。在Winsock2.h头文件中,SOCKET类型实际上是UINT_PTR,它是unsigned int或unsigned long的指针大小整数类型,具体取决于平台:1             typedef UINT_PTR SOCKET;

[*]在32位Windows系统上,UINT_PTR通常是32位,因此socket()函数返回的套接字描述符占用4个字节。
[*]在64位Windows系统上,UINT_PTR是64位,因此socket()函数返回的套接字描述符占用8个字节。
所以,socket()函数返回值占几个字节会随着目标平台的不同而变化。

793359277 发表于 2024-1-26 18:34:24


shuimiao 发表于 2024-1-26 18:39:36

火山里就是变整数
页: [1]
查看完整版本: 留个脚印