サイズが1024の文字列があり、std :: fprintf()を使用して印刷したいと考えています。 私は次のことを試してみました:std :: fprintf()を使用して長い文字列を印刷するには?
FILE* m_file = .....;
char * msg = .....; // (size of 1024)
std::fprintf(m_file, "'%.1024s'\n", msg);
しかし、出力ファイルに、私は誰もが手掛かりを持っていない、唯一の1000
の長さまで印刷されたMSGはそれについてのドキュメントに何かを見つけることができませんでした見ます?
更新:
それはどこかに私たちのパイプラインの中に、文字列は、サイズが1000で切断されていることが判明し、それは私が、私はMSGを参照してください「fprintfの
std :: fstreamを使用してください。 –
コードは最小限の_Environmental limit__254を超えました。あなた自身であります。あなたのシステムで 'BUFSIZ'とは何ですか? – chux
@ manni66私はそれを使うことができましたが、これは古いコードであり、あまり変更したくありません。また、私はなぜこれが起こっているのか不思議です –