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 套接字?是的。不,我在撒

最近更新

2025年〖公共营养师经验〗提高公共营养师学习.. 22页

2025年《鲁豫有约-游本昌》观后感作文00字(整.. 42页

2025年《雪孩子》读书心得(推荐8篇) 7页

2025年《陋室铭》古今异义及词类活用(精选9篇.. 9页

2025年《远去的童年》小学作文200字(通用20篇.. 24页

2025年《跳起舞》教学设计(共篇) 58页

2025年《读书莫放“拦路虎”》(整理篇) 29页

2025年《诗经·唐风·绸缪》赏析(共9篇) 14页

2025年《让物理学界沸腾的引力波》阅读理解及.. 29页

2025年《西归绝句其二》元稹(共3篇) 12页

2025年《落日朱启平》阅读答案(整理篇) 13页

2025年《能被3整除的数的特征》优秀教学设计(.. 42页

2025年《美丽的冬天》(学生作文)(精选篇) 25页

2025年《红楼梦》读后感400字-500字小学作文(.. 6页

2025年《笑猫日记》之《绿狗山庄》读书笔记三.. 17页

2025年《秋思》张籍唐诗鉴赏(共6篇) 13页

2025年《百合花》优秀教案(精选篇) 53页

2025年《生态系统的结构和功能》教学反思(通.. 38页

2025年《狼牙山五壮士》读书笔记(精选20篇).. 28页

2025年《爸爸,爸爸》散文赏析(通用9篇) 23页

2025年湿疹诊疗指南 9页

北京市燃气管理条例2023年 6页

法学概论章节练习试题(考试版) 31页

2023年新课标卷理综物理高考真题文档版(无答案.. 4页

医院党委班子征求意见和建议 5页

美剧lietome中的微表情 ppt课件 30页

30kgh调温除湿机的设计【含CAD图纸+文档】 48页

SINAMICS S120故障报警手册 _CN 328页

单片机液位检测及显示电路设计 (2)-毕业论文... 47页

用于带式运输机传动装置中的同轴式二级圆柱齿.. 29页