socklen_t 类型

来源:互联网 发布:淘宝的虾米vip会员 编辑:程序博客网 时间:2024/05/16 01:18

      在Linux下编译程序,accept( ; ; ;) 函数的第三个参数提示“从类型‘int*’到类型‘socklen_t*’的转换无效”,于是乎,我发现还有个 socklen_t 类型。
解决办法:
    将保存 struct sockaddr_un 结构的长度的变量类型,由 int 类型改为 socklen_t 类型。

    将 int 类型改为 socklen_t 类型之后,编译含有 accept( ; ; ;)  的代码,顺利通过编译。

 

话说,看到这么一个宏,也可以计算 struct sockaddr_un 结构的长度。
    int size = offsetof(struct sockaddr_un, sun_path) + strlen(un.sun_path);
我在想,这样计算得到的 size 是不是就不需要 改 int 类型为 socklen_t 类型 了呢? (2012-06-11)
引文地址: http://blog.csdn.net/blueliuyun/article/details/7638532


如何在Linux下搜索 socklen_t 类型所在的文件呢
--> cd /usr/include
--> grep -r socklen_t * | grep typedef

得到的结果截图如下:


参考链接:
http://blog.csdn.net/yanyiyyy/article/details/6642867

原创粉丝点击