現在、コンソールにテキストファイルを出力するこのプログラムがありますが、すべての行の下に余分な新しい行があります。テキストが
こんにちは世界
こんにちは
世界
コードはこれです
#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
FILE* fp;
char input[80], ch = 'a';
char key[] = "exit\n";
int q;
fp = fopen("c:\\users\\kostas\\desktop\\original.txt", "r+");
while (!feof(fp)) {
fgets(input, 80, fp);
puts(input);
}
fclose(fp);
return 0;
}
puts()
ライブラリ指定により改行文字を追加します。代わりにprintf
を使用できます。ここで、フォーマット文字列を使用して何を印刷するかを制御できます。
printf("%s", input);
通常、改行を省略するにはputs()ではなくfputs()を使用します。あなたのコードでは、
puts(input);
になるでしょう:
fputs(input, stdout);