C++创建TCP连接
时间: 2023-07-11 19:06:20 浏览: 41
C++可以使用socket库来创建TCP连接。下面是一个简单的示例代码:
```c++
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
int main(int argc, char *argv[])
{
int sock;
struct sockaddr_in server;
char message[1000], server_reply[2000];
// 创建socket
sock = socket(AF_INET, SOCK_STREAM, 0);
if (sock == -1) {
printf("Could not create socket");
}
// 设置服务器地址和端口
server.sin_addr.s_addr = inet_addr("127.0.0.1"); // 服务器IP地址
server.sin_family = AF_INET;
server.sin_port = htons(8888); // 服务器端口
// 连接服务器
if (connect(sock, (struct sockaddr *)&server, sizeof(server)) < 0) {
perror("connect failed. Error");
return 1;
}
puts("Connected\n");
// 发送数据
strcpy(message, "Hello from client");
if (send(sock, message, strlen(message), 0) < 0) {
puts("Send failed");
return 1;
}
// 接收服务器响应
if (recv(sock, server_reply, 2000, 0) < 0) {
puts("recv failed");
}
puts("Server reply :");
puts(server_reply);
close(sock);
return 0;
}
```
该程序首先创建一个socket对象(使用socket函数),然后设置服务器IP地址和端口(使用struct sockaddr_in结构体),最后连接到服务器(使用connect函数)。连接成功后,客户端向服务器发送一条消息(使用send函数),然后等待服务器的响应(使用recv函数)。最后,关闭socket连接(使用close函数)。