using を読み取り、結果を usingstdin
にscanf
返す単純な C++ プログラムがあります。stdout
printf
#include <iostream>
using namespace std;
int main()
{
int n, x;
int f=0, s=0, t=0;
scanf("%d",&n); scanf("%d",&x);
for(int index=0; index<n; index++)
{
scanf("%d",&f);
scanf("%d",&s);
scanf("%d",&t);
if(x < f)
{
printf("first\n");
}
else if(x<s)
{
printf("second\n");
}
else if(x<t)
{
printf("third\n");
}
else
{
printf("empty\n");
}
}
return 0;
}
g++ でコンパイルし、Linux で実行しています。次のように、テキスト ファイルを入力として使用してプログラムを実行し、出力を別のテキスト ファイルにパイプします。
プログラム < in.txt > out.txt
問題は、out.txt が次のようになっていることです。
結果1_
結果2_ 結果
3_
...
「_」は各行末の余分なスペースです。gedit で out.txt を表示しています。
追加のスペースなしで出力を生成するにはどうすればよいですか?
私の入力ファイルは次のようになります。
2 123
123 123 123
123 234 212
編集:この問題の回避策を見つけることができました:printf("\rfoo");
ご意見ありがとうございます!