問題タブ [endl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - c が欠落している場合、ループは無限ループに入ります
私は非常に奇妙なことに遭遇しました。私が問題を抱えているコードは次のとおりです。
cout << found1 << endl;
奇妙なことは、行の下に置くとfound1 = inString.find(frame1, found1);
、ループが適切に実行されることです。ただし、持っていないとcout << found1 << endl;
無限ループに入ります...
助言がありますか?ありがとう!
c++ - 文字列として宣言された関数を作成して、行を終了するにはどうすればよいですか
テキストファイルから読み取り、テキストファイル全体を出力する関数があります。このように見えます。
この関数を次のように呼び出します。
return output + "\n" を使用する場合
これを出力として取得します
行間にそのスペースを入れたくありません。
したがって、関数が呼び出された後、行を終了する必要があります。関数内でそれを行うにはどうすればよいですか?
PS。また、私が行った方法よりもテキストファイルにすべてを出力するためのより良い方法があれば、提案をいただければ幸いです。
c++ - std::endl が MinGW を使用してコンパイルされた Windows 8 をクラッシュさせる
私は 3 台のコンピューターを持っており、そのうちの 2 台は Windows 8 を使用しています。MinGW の g++ (4.8.1-4) の最新バージョンを使用すると、Windows 8 コンピューターでコンパイルして実行すると、Windows 7 ではなく、hello world プログラムがフリーズします。
これは g++ で問題なくコンパイルされますが、a.exe を実行すると "Hello, World!" が表示されます。ウィンドウがポップアップし、「a.exe が動作を停止しました。Windows はオンラインでプログラムの解決策を確認できます....」などと表示されます。
誰もこの問題を見たことがありますか。
また、「std::cout << "Hello, World!\n" << std::flush;」を試しました。これには同じ問題があります。バッファをフラッシュするすべての関数がクラッシュを引き起こすようです。
Eric のアドバイスに従い、プログラムを再コンパイルして gdb で実行したところ、次の出力が得られました。
c++ - 「エラー: 宣言されていない識別子 'cout' の使用とエラー: オーバーロードされた関数への参照を解決できませんでした」を取得し続ける
宣言からわかるように、さまざまな関数のホストを使用して並べ替えプログラムを作成しています。ただし、プログラムをコンパイルして実行しようとすると、次のような同じエラーが発生し続けます。
error: use of undeclared identifier 'cout'; did you mean 'count'?
cout << "Hello from main" << endl;
error: reference to overloaded function could not be resolved; did you mean to call it?
cout << "Hello from main" << endl;
error: use of undeclared identifier 'endl'; did you mean 'end'?
cout << "Hello from main" << endl;
なぜこれらのエラーが発生するのかよくわかりません...名前空間stdの使用を含めたときに、「cout」と「endl」を使用するために必要なものをすべて含めたと思いました...私のすべての関数宣言と何か関係がありますが、それはただの予感です。
c++ - endl の代わりに '\n' を使用すると出力に影響します。なぜですか?
そこで、C++ で初期化されていない配列を作成し、最後の要素を出力して、出力がどうなるかを確認しました。初期化されていない配列のすべての要素の値は 0 でなければなりませんが (そうですか?)、得られた出力は別のものでした。メイン関数は次のようになります。
この出力を実行する1606416656
と(毎回同じ数)、改行があります。ただし、に変更'\n'
するとendl
、出力が0
改行付きに変更されます。
何故ですか?
また、 を使用しても正しく出力されi[3]
ずに印刷しようとします。なんで?i[4]
0
'\n'
'\n'
私はいくつかの調査を行い、「バッファをフラッシュ」しない場所を読みendl
ました。この「ストリームのフラッシュ」は実際にはどういう意味ですか?これが出力に影響を与えているのですか?
c++ - 16進数を出力するC++ endl
g++ で多くのプログラムをコンパイルした後、突然endl;
奇妙な動作を示します。改行に加えて、16 進数のコンソール出力も取得します。おそらくメモリ リークの問題があると考えて、Windows 上の VMWare 内で実行されている Linux Mint Debian Edition (最新) を再起動しました。問題が解決しない。以下は、私の g++ バージョン (以前の通常の出力から変更されていません) と、それより下の出力を含むテスト プログラムです。
g++ バージョン (Debian 4.8.2-1) 4.8.2
テスト出力:
c++ - return C++ を使用しない int 型の関数
次のような関数がある場合:
そして、私がそれをそのように使用する場合:
返されて印刷されます9
。上記の同じcout
行を使用して、 return をコメント アウトするか削除すると、 return が出力されaddNumbers
ます1
。私がこれを行う場合:
9
returnを使用しなくても、自動的に return と print が表示されます。同様に、次のように書くことができますint answer = x
。そしてそれは戻り4
ます。私はこれを書くこともできます:
それでも4が返されます。
正確には何が返され、その理由は何ですか? パラメータ変数を使用すると 1 以外の値しか返されませんが、最後の例に示すように変数 answer は返されません。これは、変数を 1 に変更しても の値が返されたためですx (4)
。
c++ - std::endl をストリームに送信すると、メモリアドレスが得られます
このプログラムがアドレスを std::cout に送信する理由を誰か説明してもらえますか?
main().. の std::endl が原因ですが、なぜですか??
出力: