windows 用socket创建socket, 如何关闭
时间: 2023-12-16 11:04:29 浏览: 110
windows——socket通讯.zip
在 Windows 平台上,可以使用 `closesocket()` 函数来关闭一个已经创建的 Socket。
函数原型:
```c++
int closesocket(
SOCKET s
);
```
参数:
- `s`:表示要关闭的 Socket 的句柄。
返回值:
- 如果函数调用成功,则返回 0。
- 如果函数调用失败,则返回 `SOCKET_ERROR`。
示例代码:
```c++
#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdio.h>
#pragma comment(lib, "Ws2_32.lib")
int main() {
// 初始化 Winsock
WSADATA wsaData;
int iResult = WSAStartup(MAKEWORD(2, 2), &wsaData);
if (iResult != 0) {
printf("WSAStartup failed with error: %d\n", iResult);
return 1;
}
// 创建 Socket
SOCKET sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (sock == INVALID_SOCKET) {
printf("socket failed with error: %ld\n", WSAGetLastError());
WSACleanup();
return 1;
}
// 关闭 Socket
iResult = closesocket(sock);
if (iResult == SOCKET_ERROR) {
printf("closesocket failed with error: %d\n", WSAGetLastError());
WSACleanup();
return 1;
}
// 卸载 Winsock
WSACleanup();
return 0;
}
```
阅读全文