在C语言中,通过TCP发送整数数组需要进行以下步骤:
以下是一个简单的示例代码:
#include<stdio.h>
#include <stdlib.h>
#include<string.h>
#include <unistd.h>
#include <arpa/inet.h>
#include <sys/socket.h>
int main(int argc, char *argv[]) {
int sockfd;
int len;
struct sockaddr_in serv_addr;
int result;
int arr[] = {1, 2, 3, 4, 5};
int arr_size = sizeof(arr) / sizeof(int);
// 创建套接字
sockfd = socket(AF_INET, SOCK_STREAM, 0);
if (sockfd < 0) {
perror("socket");
exit(1);
}
// 连接到远程服务器
memset(&serv_addr, 0, sizeof(serv_addr));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = inet_addr("127.0.0.1");
serv_addr.sin_port = htons(8000);
len = sizeof(serv_addr);
result = connect(sockfd, (struct sockaddr *)&serv_addr, len);
if (result < 0) {
perror("connect");
exit(1);
}
// 发送整数数组
send(sockfd, &arr_size, sizeof(int), 0);
send(sockfd, arr, arr_size * sizeof(int), 0);
// 关闭套接字
close(sockfd);
return 0;
}
在这个示例中,我们创建了一个套接字,连接到远程服务器(这里使用了本地地址127.0.0.1和端口8000),然后发送整数数组。在发送数组之前,我们首先发送了数组的大小,以便接收方知道如何接收数据。最后,我们关闭了套接字。
请注意,这个示例仅用于演示如何在C语言中通过TCP发送整数数组,并不是一个完整的TCP服务器和客户端实现。在实际应用中,您需要根据您的需求进行相应的修改和优化。
领取专属 10元无门槛券
手把手带您无忧上云