因此,如果我必须使用fgets()两次从键盘读取两个不同的输入,我应该指定两个不同的缓冲区或只重用相同的缓冲区?有什么不同?
使用相同的缓冲区:
char buffer[100];
fgets(buffer, sizeof(buffer), stdin);
fgets(buffer, sizeof(buffer), stdin);
Run Code Online (Sandbox Code Playgroud)
对不同的输入使用不同的缓冲区:
char buffer_x[100];
char buffer_y[100];
fgets(buffer_x , sizeof(buffer_x), stdin);
fgets(buffer_y , sizeof(buffer_y), stdin);
Run Code Online (Sandbox Code Playgroud) fseek(f, 0, SEEK_END);
size = ftell(f);
Run Code Online (Sandbox Code Playgroud)
如果 ftell(f) 告诉我们当前文件位置,这里的大小应该是从文件末尾到开头的偏移量。为什么大小不是 ftell(f)+1?难道 ftell(f) 不应该只给我们文件末尾的位置吗?