c语言

c语言socket怎么读取数据并存储

小亿
117
2024-03-20 19:04:51
栏目: 云计算

要读取数据并存储数据,首先需要创建一个socket来建立连接,并设置socket的选项。然后使用read()函数来读取数据,最后将读取的数据存储到一个缓冲区中。

以下是一个简单的示例代码,演示了如何在C语言中读取数据并存储数据:

#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>

int main() {
    int sockfd;
    char buffer[1024];
    struct sockaddr_in server_addr;

    // 创建socket
    sockfd = socket(AF_INET, SOCK_STREAM, 0);
    if (sockfd < 0) {
        perror("Error creating socket");
        return 1;
    }

    // 设置服务器地址和端口
    server_addr.sin_family = AF_INET;
    server_addr.sin_port = htons(8080);
    server_addr.sin_addr.s_addr = inet_addr("127.0.0.1");

    // 建立连接
    if (connect(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) {
        perror("Error connecting to server");
        return 1;
    }

    // 读取数据并存储
    int bytes_read = read(sockfd, buffer, sizeof(buffer));
    if (bytes_read < 0) {
        perror("Error reading data");
        return 1;
    }

    // 打印读取的数据
    printf("Data read from server: %s\n", buffer);

    // 关闭socket连接
    close(sockfd);

    return 0;
}

在这个示例中,首先创建了一个socket并连接到指定的服务器地址和端口。然后使用read()函数读取数据,并将读取的数据存储到buffer中。最后打印出从服务器读取的数据,并关闭socket连接。

0
看了该问题的人还看了