0
我试图制作一个简单的客户端和服务器。现在我可以将文件的内容输出到屏幕上。现在我想将从缓冲区读取的每一行存储到一个数组中。我试图这样做,但由于某些原因,它总是只添加从缓冲区接收到的最后一行。任何人都可以指出我在那里出了错从缓冲区中读取数据并将其存储在数组中
int getFile (char path[256], int fd)
{
char buffer[256];
char bufferCopy[256];
char arguments[1000][1000];
int total = 0;
char * ptr;
while(read(fd, buffer, 256) != NULL)
{
char * temp;
strcpy(arguments[total], buffer);
total++;
}
for(int i = 0; i < total; i++)
{
printf("\n %s", arguments[i]);
}
}
你的while的顶部还可以使用if(total> = 1000)break;避免超出内存。 – Gilbert
@吉尔伯特:是的,也是。 –