要讀取數據并存儲數據,首先需要創建一個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連接。