while (fgets(line, LINELEN, inputFile)){
printf("%s$", line)
}
我正在嘗試讀取文件並將其作爲CAT命令打印到控制檯。在這種情況下,我想在每一行的末尾加上一個美元符號,但是美元的嘆息只是在每一行的開頭纔打印出來。你們能告訴我如何解決這個問題嗎?非常感謝!如何在每個輸入結束時打印美元符號C
while (fgets(line, LINELEN, inputFile)){
printf("%s$", line)
}
我正在嘗試讀取文件並將其作爲CAT命令打印到控制檯。在這種情況下,我想在每一行的末尾加上一個美元符號,但是美元的嘆息只是在每一行的開頭纔打印出來。你們能告訴我如何解決這個問題嗎?非常感謝!如何在每個輸入結束時打印美元符號C
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);
}
fgets
命令存儲它讀取的換行符。通常的解決方案是刪除換行符(there are several ways to do this of course)。下面是一個方法:
while (fgets(line, LINELEN, inputFile))
{
strtok(line, "\n");
printf("%s$\n", line);
}
注意'strtok'不重入或線程。 – o11c 2014-10-08 04:03:27
'strtok'甚至在這裏工作。 http://ideone.com/yLHmuC – indiv 2014-10-08 04:17:48
我的情況下,它的工作:( – stanlopfer 2014-10-08 04:21:59
它的工作。非常感謝! – stanlopfer 2014-10-08 04:20:18