HarmonyOS里的TCP通讯怎样使用
时间: 2024-04-28 18:04:53 浏览: 32
要在HarmonyOS中使用TCP通信,您需要使用套接字(socket)API。以下是使用套接字API进行TCP通信的基本步骤:
1. 创建套接字:使用socket()函数创建一个套接字。指定套接字类型为SOCK_STREAM,表示使用TCP协议进行通信。
2. 绑定套接字:使用bind()函数将套接字绑定到本地IP地址和端口号。
3. 连接服务器:使用connect()函数连接到服务器IP地址和端口号。
4. 发送数据:使用send()函数发送数据到服务器端。
5. 接收数据:使用recv()函数从服务器端接收数据。
6. 关闭套接字:使用close()函数关闭套接字。
下面是一个简单的使用socket API进行TCP通信的示例:
```c
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main() {
int sockfd = socket(AF_INET, SOCK_STREAM, 0); // 创建套接字
struct sockaddr_in addr;
addr.sin_family = AF_INET;
addr.sin_port = htons(8080);
inet_pton(AF_INET, "127.0.0.1", &addr.sin_addr); // 绑定本地IP地址和端口号
bind(sockfd, (struct sockaddr*)&addr, sizeof(addr));
struct sockaddr_in server_addr;
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(8080);
inet_pton(AF_INET, "192.168.1.1", &server_addr.sin_addr); // 连接服务器
connect(sockfd, (struct sockaddr*)&server_addr, sizeof(server_addr));
char buf[1024];
strcpy(buf, "Hello, World!");
send(sockfd, buf, strlen(buf), 0); // 发送数据
recv(sockfd, buf, sizeof(buf), 0); // 接收数据
printf("Received: %s\n", buf);
close(sockfd); // 关闭套接字
return 0;
}
```