如何制作新手socket编程入门详细教程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2529个文字,预计阅读时间需要11分钟。
开发环境+运行平台:Ubuntu 14.04 LTS疑问引导+问题1:头部文件的疑问
开发环境
运行平台:Ubantu 14.04 LTS
疑问引导
问题1:头文件的疑问:
#include <sys/socket.h>与#include <linux/socket.h>有何区别?
解答:
1. 使用diff查看:adc分别表示添加、删除、修改
2. 其实是路径的不同导致有不同的socke.h文件
3.<sys/socket.h> 是 Internet Protocol family,也就是tcpip协议的应用层接口
4.<linux/socket.h>目前暂时未弄懂,但不是接口函数,估计是系统函数。它应该是被操作系统使用,猜测该文件在tcpip的传输层
问题2:大小端字节序问题:
1.c语言检测:利用指针取值和取址的交叉应用,为了增强网络移植性
2. 而socket提供了字节序转换函数:h:host;n:network;l:long32位;s:short16位
3. htonl:将主机的32位主机字节序(ip地址),转换为网络字节序(一列数据)。
本文共计2529个文字,预计阅读时间需要11分钟。
开发环境+运行平台:Ubuntu 14.04 LTS疑问引导+问题1:头部文件的疑问
开发环境
运行平台:Ubantu 14.04 LTS
疑问引导
问题1:头文件的疑问:
#include <sys/socket.h>与#include <linux/socket.h>有何区别?
解答:
1. 使用diff查看:adc分别表示添加、删除、修改
2. 其实是路径的不同导致有不同的socke.h文件
3.<sys/socket.h> 是 Internet Protocol family,也就是tcpip协议的应用层接口
4.<linux/socket.h>目前暂时未弄懂,但不是接口函数,估计是系统函数。它应该是被操作系统使用,猜测该文件在tcpip的传输层
问题2:大小端字节序问题:
1.c语言检测:利用指针取值和取址的交叉应用,为了增强网络移植性
2. 而socket提供了字节序转换函数:h:host;n:network;l:long32位;s:short16位
3. htonl:将主机的32位主机字节序(ip地址),转换为网络字节序(一列数据)。

