1 / 72
文档名称:

《c语言socket编程指南》.doc

格式:doc   大小:233KB   页数:72页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《c语言socket编程指南》.doc

上传人:755273190 2021/8/18 文件大小:233 KB

下载得到文件列表

《c语言socket编程指南》.doc

文档介绍

文档介绍:介绍
  Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措?等等…
好在我已经将这些事完成了,我将和所有人共享我的知识了。如果你了解 C 语言并想穿过网络编程的沼泽,那么你来对地方了。--------------------------------------------------------------------------------
读者对象
  这个文档是一个指南,而不是参考书。如果你刚开始 socket 编程并想找一本入门书,那么你是我的读者。但这不是一本完全的 socket 编程书。
--------------------------------------------------------------------------------
平台和编译器
  这篇文档中的大多数代码都在 Linux 平台PC 上用 GNU 的 gcc 成功编译过。而且它们在 HPUX平台 上用 gcc 也成功编译过。但是注意,并不是每个代码片段都独立测试过。
--------------------------------------------------------------------------------
目录:
1) 什么是套接字?
2) Internet 套接字的两种类型
3) 网络理论
4) 结构体
5) 本机转换
6) IP 地址和如何处理它们
7) socket()函数
8) bind()函数
9) connect()函数
10) listen()函数
11) accept()函数
12) send()和recv()函数
13) sendto()和recvfrom()函数
14) close()和shutdown()函数
15) getpeername()函数
16) gethostname()函数
17) 域名服务(DNS)
18) 客户-服务器背景知识
19) 简单的服务器
20) 简单的客户端
21) 数据报套接字Socket
22) 阻塞
23) select()--多路同步I/O
24) 参考资料
--------------------------------------------------------------------------------
什么是 socket?
  你经常听到人们谈论着 “socket”,或许你还不知道它的确切含义。现在让我告诉你:它是使用 标准Unix 文件描述符 (file descriptor) 和其它程序通讯的方式。什么?你也许听到一些Unix高手(hacker)这样说过:“呀,Unix中的一切就是文件!”那个家伙也许正在说到一个事实:Unix 程序在执行任何形式的 I/O 的时候,程序是在读或者写一个文件描述符。一个文件描述符只是一个和打开的文件相关联的整数。但是(注意后面的话),这个文件可能是一个网络连接,FIFO,管道,终端,磁盘上的文件或者什么其它的东西。Unix 中所有的东西就是文件!所以,你想和Internet上别的程序通讯的时候,你将要使用到文件描述符。你必须理解刚才的话。现在你脑海中或许冒出这样的念头:“那么我从哪里得到网络通讯的文件描述符呢?”,这个问题无论如何我都要回答:你利用系统调用 socket(),它返回套接字描述符 (socket descriptor),然后你再通过它来进行send() 和 recv()调用。“但是...”,你可能有很大的疑惑,“如果它是个文件描述符,那么为什 么不用一般调用read()和write()来进行套接字通讯?”简单的答案是:“你可以使用!”。详细的答案是:“你可以,但是使用send()和recv()让你更好的控制数据传输。”存在这样一个情况:在我们的世界上,有很多种套接字。有DARPA Internet 地址 (Internet 套接字),本地节点的路径名 (Unix套接字),CCITT ( 套接字完全忽略)。也许在你的Unix 机器上还有其它的。我们在这里只讲第一种:Internet 套接字。
--------------------------------------------------------------------------------
Internet 套接字的两种类型
  什么意思?有两种类型的Internet 套接字?是的。不,我在撒

最近更新

化工原理考试题库 28页

中级烹调考试1-2章练习 21页

二零二五年度孕妇离婚协议范本示例3篇 44页

二零二五年度委托代理房产租赁合同解除代理协.. 41页

二零二五年度天津市手房屋买卖合同附车位租赁.. 48页

二零二五年度塔吊操作技能培训与劳务用工协议.. 37页

沪科版物理九年级上册第12章测试卷 第十二章达.. 8页

二零二五年度企业内部培训项目服务协议3篇 40页

专业围棋比赛场地租赁服务合同 3页

个人商铺租赁合同模板 3页

中科软件园办公场地租赁合同续约规定 3页

事业单位离职人员创业项目品牌建设合同 3页

二零二五ktv消防设施更新换代与优化升级合同 3页

人工智能教育与培训承包经营合同 3页

代理记账合同模板-适用于房地产企业 3页

2025年度智能小区车位租赁与共享管理合同3篇 39页

2025年度新能源电站委托经营协议书3篇 42页

企业融资租赁合同样本 3页

企事业单位与汽车租赁公司高端租赁服务合同 3页

2025年度工程内架架子工工人安全生产责任承诺.. 42页

供应链反担保保证合同标准文本 3页

保密协议与竞业限制在软件开发领域的深度合同.. 3页

保温材料安装施工购销合同范本 3页

2025年度家政服务人员就业保障与技能培训合同.. 39页

储能电站能源消耗监测与合同能源管理协议 3页

汽车刹车抱死的利与弊 5页

汇总 - 39种行业废水处理工艺流程图 4页

书包质检报告 22页

风力发电施工安全培训课件 35页

发电厂电气主接线及厂用电 120页