2

この奇妙なエラーに遭遇したとき、私はC++で出力フォーマットに取り組んでいました。配列に含まれる情報を出力するために使用されるコードのサンプルを次に示します。

int store;
while(table[i]!=NULL)
            {
                store=table[i]->ReturnID();
                output<<"ID: "<<setw(9)<<store<<"\t"; // Export to a file channel
                store=table[i]->ReturnTotalNumber();
                output<<" Total Number: "<<setw(5)<<store<<endl;
                i++;
            }

コードはコンパイルされ、意図したとおりに機能しますが、ここにあるのは私のoutput.txtファイルの一部です。

ID:       243    Total Number:     0
ID:       312 Total Number:     0
ID:       458    Total Number:     0
ID:       700    Total Number:     0
ID:       738    Total Number:     0
.....

txtファイルの2行目は、常にバランスが崩れているようです。あとはいくつあっても大丈夫です。また、最初のsetw(9)を9から他の乱数に変更すると、そのバグが修正されることに気付きましたが、説明できません。誰かがこれについて何か説明がありますか?私のコンパイラはGCC-G++バージョン4.4.1で、IDEはCode ::Blocks10.05です。

4

1 に答える 1