while (fgets(line, LINELEN, inputFile)){
printf("%s$", line)
}
我正在尝试读取文件并将其作为CAT命令打印到控制台。在这种情况下,我想在每一行的末尾加上一个美元符号,但美元叹息恰好在每一行的开头打印出来。你们能告诉我如何解决这个问题。非常感谢!
答案 0 :(得分:2)
fgets
包含该行末尾的'\n'
。
使用类似:
char line[hopefullybigenough];
while (fgets(line, sizeof(line), inputFile)) {
size_t len = strlen(line);
if (line[len - 1] == '\n') line[len - 1] = '\0';
printf("%s$\n", line);
}
答案 1 :(得分:1)
fgets
命令存储它读取的换行符。通常的解决方案是删除换行符(there are several ways to do this of course)。这是一种方式:
while (fgets(line, LINELEN, inputFile))
{
strtok(line, "\n");
printf("%s$\n", line);
}