用这个系列在记录自己的C++网络编程之路。
首先,网络编程必然离不开socketAPI函数,大多数 Socket API 都源于BSD Socket (即伯克利套接字(Berkeley Sockets)),因此这些 socket 函数在不同的平台有着相似的签名和参数。
### 常用的socketAPI函数
函数简单描述 |
附加说明 |
|
---|---|---|
socket |
创造某种类型的套接字 |
|
bind |
||
listen |
将一个 socket 变为侦听状态 |
|
connect |
试图建立一个 TCP 连接 |
|
accept |
尝试接收一个连接 |
|
send |
通过一个socket发送数据 |
|
recv |
通过一个socket收取数据 |
|
select |
判断一组socket上的读事件 |
|
gethostbyname |
通过域名获取机器地址 |
|
close |
Windows 系统中对应的是 closesocket |
|
shutdown |
关闭 socket 收或发通道 |
|
setsockopt |
||
getsockopt |
以上只是最常用的一部分socket 函数,在类Unix系统中,我们可以使用相关的工具查看它的用法。具体而言,我们想要查看bing函数的方法,只需要在 shell 终端输入 man bind