所以我有下面的代码,我接受了检查,这两部分并不真正知道如何解决它们。
#define MAX_LINE 4096
char line[MAX_LINE];
fd = open("../.././test.txt". O_RDONLY);
read(fd, line, MAX_LINE);
read(fd, line, MAX_LINE);
谢谢!
答案 0 :(得分:1)
解释给定代码可以读取的最小和最大文本行数。
最小值为0或分数。如果假定线路终结器单独为\n
,则最大值可能为2047或2048;如果为\r\n
,则最大值为4096/3 +/- 1;如果允许线路为空,则最大值为4096 和假定行终止符为\n
。我会说这个问题根本没有说明,并抱怨。
将代码更改为完全在文本行上阅读。
同样,这是完全不明确的。如果允许使用stdio
(未说明)且不是系统调用,则有多种选择。如果不是,则必须编写循环和字符串连接。
答案 1 :(得分:-1)
我认为fgets()适合读取一行。
#define MAX_LINE 4096
char line[MAX_LINE];
FILE *fp;
fp = fopen("../.././test.txt", "r");
fgets(line, sizeof(line), fp); // read one line