socket(PF_INET, SOCK_STREAM, 0);//socket编程,参数置AF_INET;与PF_INET区别是什么

 我来答
歌梦复兴
2012-04-09 · TA获得超过211个赞
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:127万
展开全部
AF 表示ADDRESS FAMILY 地址族
  PF 表示PROTOCOL FAMILY 协议族
  但这两个宏定义是一样的
  所以使用哪个都没有关系
  Winsock2.h中
  #define AF_INET 0
  #define PF_INET AF_INET
  所以在windows中AF_INET与PF_INET完全一样
  而在Unix/Linux系统中,在不同的版本中这两者有微小差别
  对于BSD,是AF,对于POSIX是PF
  UNIX系统支持AF_INET,AF_UNIX,AF_NS等,而DOS,Windows中仅支持AF_INET,它是网际网区域。
  在函数socketpair与socket的domain参数中有AF_UNIX,AF_LOCAL,AF_INET,PF_UNIX,PF_LOCAL,PF_INET.这几个参数有AF_UNIX=AF_LOCAL, PF_UNIX=PF_LOCAL, AF_LOCAL=PF_LOCAL, AF_INET=PF_INET.
  建议:对于socketpair与socket的domain参数,使用PF_LOCAL系列,而在初始化套接口地址结构时,则使用AF_LOCAL.
  例如: z = socket(PF_LOCAL, SOCK_STREAM, 0); adr_unix.sin_family = AF_LOCAL;
更多追问追答
追问
最后一个参数0是什么意思
追答
protocol:套接口所用的协议。如调用者不想指定,可用0。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CSSHZY521
2012-04-09
知道答主
回答量:2
采纳率:0%
帮助的人:3230
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式