socket文件描述符

本文深入介绍了TCP套接字编程,包括socket函数用于创建套接字,bind函数用于绑定本地地址,connect函数用于建立到服务器的连接,以及listen和accept函数用于管理和接受连接请求。此外,还提到了并发服务器的工作原理和close函数的关闭机制。
摘要由CSDN通过智能技术生成
导读:
  基本TCP套接口编程一
  本文出自:http://sunsland.top263.net 作者: (2001-10-22 12:00:00)
  概述
  socket() --得到文件描述符!
  bind() --我们在哪个端口?
  connect() --Hello!
  listen() --有人给我打电话吗?
  accept() --"Thank you for calling port 3490."
  send() 和 recv() --Talk to me, baby!
  sendto() 和 recvfrom() --Talk to me, DGRAM-style
  close() 和 shutdown() --滚开!
  getpeername() --你是谁?
  gethostname() --我是谁?
  DNS --你说“白宫”,我说 "198.137.240.100"
  --------------------------------------------------------------------------------
  socket函数
  功能:指定协议类型
  定义:
  #include
  #include
  int socket(int family, int type, int protocol);
  返回值
  出错: -1
  成功: 套接口描述字 (socket file descriptor)(套接字)sockfd
  socket 函数指定了协议族(IPv4、IPv6或unix)和套接口类型(字节流、数据报或原
  始套接口)。但并没有指定本地协议地址或远程协议地址。
  理解socket
  socket使用 Unix 文件描述符 (file descriptor) 和其他程序通讯的方式。
  Unix 程序在执行任何形式的 I/O 的时候,程序是在读或者写一个文件描述符。
  一个文件描述符只是一个和打开的文件相关联的整数。
  这个文件可能是一个网络连接,FIFO,管道,终端,磁盘上的文件或者什么其他
  的东西。Unix 中所有的东西是文件!因此,与 Internet 上别的程序通讯的时候,
  要通过文件描述符。利用系统调用 socket()得到网络通讯的文件描述符。他返回
  套接口描述符 (socket descriptor),然后再通过他来调用 send() 和 recv()。
  那么为什么不用一般的调用 read() 和 write() 来通过套接口通讯?
  简单的答案是:可以使用一般的函数!
  详细的答案是:使用 send() 和 recv() 让你更好的控制数据传输。
  --------------------------------------------------------------------------------
  connect 函数
  功能:建立与TCP服务器的连接
  定义:
  #include
  #include
  int connect(int sockfd, struct sockaddr *serv_addr, in
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值