socket编程1
socket是一种通讯机制,它给应用程序提供了使用如TCP/UDP的网络协议的方式;
linux中的网络编程是通过socket接口实现的,socket是一种特殊的IO,提供对应的文件描述符。
一个完整的socket包括:
协议、本地地址、本地端口、远端地址、远端端口;
字节序:
不同体系结构的主机使用不同的字节序存储数据。
大端字节序:高地址放高字节
小端字节序:高地址放低字节
网络采用的是大端字节序
网络传输的数据(整型数)一定要统一字节序,所以当本机字节序和网络字节序不同时,一定要进行转换:
通用地址结构:
sa_family:IPV4使用AF_INET
sa_data:包含远端地址、端口、套接字数目,里面的数据是混杂在一起的
因特网地址结构:
因特网地址结构和通用地址结构是等效的,可以和相互转换,通常使用sockaddr_in更方便
IPV4地址族和字符串地址(点分十进制)间的转换:
参数:
填写IPV4地址族结构案列:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具