使用socket()创建IPv4 TCP套接字;2. 配置serv_addr并调用connect()连接服务器;3. 通过send()/recv()进行数据通信;4. 最后close()关闭连接,完成TCP客户端基本流程。

在Linux环境下编写TCP客户端程序,主要依赖于Socket网络编程接口。通过系统调用创建套接字、连接服务器、收发数据并关闭连接,即可实现基本的TCP通信。下面详细介绍实现步骤和代码示例。
创建Socket套接字
使用socket()函数创建一个用于通信的套接字文件描述符。该函数需要指定地址族、套接字类型和协议。
- AF_INET 表示IPv4地址族
- SOCK_STREAM 表示使用TCP协议(面向连接)
- protocol 参数通常设为0,由系统自动选择
示例代码:
int sockfd = socket(AF_INET, SOCK_STREAM, 0);
若返回-1表示创建失败。
配置服务器地址并连接
客户端需要知道服务器的IP地址和端口号。使用struct sockaddr_in结构体设置目标地址信息。
- sin_family 设置为 AF_INET
- sin_port 存储端口号(需使用 htons() 转换为主机字节序)
- sin_addr.s_addr 设置服务器IP(可用 inet_addr() 或 inet_pton() 转换字符串IP)
然后调用connect()函数发起连接:
connect(sockfd, (struct sockaddr*)&serv_addr, sizeof(serv_addr));
成功返回0,失败返回-1。
发送与接收数据
连接建立后,使用标准I/O函数进行通信:
- send() 或 write() 向服务器发送数据
- recv() 或 read() 接收来自服务器的数据
例如:
send(sockfd, "Hello Server", 12, 0);
recv(sockfd, buffer, sizeof(buffer), 0);
关闭连接
通信完成后,使用close()关闭套接字释放资源:
close(sockfd);
基本上就这些。只要按顺序完成创建套接字、连接服务器、数据交互和关闭连接四个步骤,就能实现一个完整的TCP客户端。不复杂但容易忽略错误处理,建议每次系统调用后检查返回值以确保程序稳定运行。










