問題タブ [std]
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++でのEOFの無限ループ
このコードは、ほとんどの場合、ユーザーに1文字の入力を求め、関連するアクションを実行し、ユーザーにReturnキーを押して、繰り返すように求めるという、希望どおりに機能します。ただし、プロンプトで^ D(EOF)と入力すると、無限ループが発生します。std :: cin.clear()を介してエラー状態をクリアし、std :: cin.ignore(...)を呼び出してバッファーをクリアしています。何が無限ループを引き起こしている可能性がありますか?
重要な場合は、これをMacOSXターミナルで実行しています。
更新:ここで私が本当に求めているのは、ユーザーがプロンプトでEOF(^ D)を入力したときに、(a)それを検出し、(b)ユーザーがデータを入力し続けることができるようにストリームをリセットする方法です。
次の例は上記のコードとは異なりますが、^ Dが検出された後にストリームをクリアし、そのストリームからの読み取りを続行するという同じ原則を示しています。
c - stdlib.h の abs() 関数ファミリーが符号付きの値を返すのはなぜですか?
これの否定的な意味は、man ページに記載されています。
注意 最も負の整数の絶対値を取得しようとすることは定義されていません。
この背後にある理由と、未定義の動作を回避したい人にとって最善の手段は何ですか? 次のようなことに頼る必要がありますか?
(stdlib の不快感を強調するために意図的にハックしています ;-)
例
4 ビットの符号付きの値があるとします (理解しやすいように)。符号なしの最大値は 15、符号付き (正) の最大値は 7、符号付き (負) の最小値は -8 なので、abs(-8) は符号付きの値には適合しません。確かに、-8 として表すことはできますが、結果を伴う除算と乗算は期待どおりに機能しません。
c++ - XCode + C++でどのようにstd::vectorを実行しますか?
さまざまな理由から (そして、それらが有効であることを保証するので、「ココアを使用する」という話はやめてください)、Mac でいくつかのグラフィック デモを再構築するために、XCode、C++、OpenGL、OpenCL (サイドに少し GLUT を使用) を使用する必要があります。 (XP + Visual Studio 2005 開発による)。このプロジェクトは、「c++ stdc++」を使用してコマンド ライン ツールとしてビルドされました。
私の Program.h ファイルは、シェーダー オブジェクトを相互に接続し、コンパイルし、リンクし、その他の方法で OpenGL シェーダー プログラムとして使用できるように準備します。このファイルには、次の関連するコード行が含まれています。
クラスのプライベートセクション内:
シェーダ ハンドルを追加する場合:
最後に、プッシュされたシェーダー ハンドルを使用する場合:
私のすべての経験と調査では、C++ 内のこれらの行に問題はありません。ただし、コンパイル時に (デバッグまたはリリースに関係なく、_GLIBCXX_DEBUG
問題とは関係ありません)、次の 4 つのエラーが生成されます。
また、stl_bvector.h および vector.tcc にリンクするファイルは次のとおりです。
これまでのところ、多数の Google 検索で何も見つかりませんでした。このコードはすべて、Windows 上で問題なく動作します。さらに悪いことに、上記のコードを同等のリストに置き換えると、次のようになります。
と、
と、
プログラムは期待どおりに動作します。
しかし、これを完全にベクトルの実装のせいにすることはできません。次のプログラムがあるからです。
問題なく動作します。
必要に応じてさらに情報を提供させていただきます。
Cocoa/Objective-C を使うべきだとは言わないでください。それは今のところ本当にオプションではありません。はい、リストを使用してこの機能を実現できますが、デモの他の部分は簡単に作り直すことができません。
c++ - std::istream の長さを決定するより良い方法は?
次よりも std::istream の長さを決定するためのより良い方法はありますか:
特に、ストリームが CD や DVD などの低速メディア上のファイルにある場合は、ストリームの最後までシークしてから元の位置に戻る必要があるのは、本当に無駄に思えます。
c++ - 最初に挿入せずに標準マップ要素で関数を呼び出す
次のコードは大丈夫ですか?
または、次のことを行う必要がありますか。
また、これを行うことはできますか:
そして、参照によるアクセスはどうですか:
php - foreachループとstdclassオブジェクト
私はここで同様の質問を見てきましたが、私の問題に解決策を適用できないようです。APIから取得した$resultsという変数があります。仕事の顧客を保護するために、適切な名詞を変更します。
ここでは2つのエントリに短縮しましたが、エントリの数は異なります。これは、過去1時間のトランザクションのチェックの結果であり、1つしかない場合もあれば、12個にもなる場合もあります。
これらのエントリをwebsiteId1、websiteId2などの変数に割り当てたいと思います。foreachループを実行する必要があることはわかっていますが、理解できないようです。「[詳細]」も取得できるようにするにはどうすればよいですか?
c++ - while ループでの C++ STD Cin エラー
以下のループに入り、最初の命令 cmdstd:getline(std::cin,cmdInput); を入力したのはなぜですか。入力された入力を読み取りません。たとえば、「b 8」と入力すると、「cmd is b 8」と表示されますが、次の読み取り std::getline(std::cin, input); にスキップします。代わりに「それはbです」と表示します
c++ - std::map 検索が正しく機能しない
std::map.find() は、ある場合は見つかった要素に、ない場合は end() に map::iterator を返すことを目的としています。BadPtr が返ってきます。コードの他の部分でも、まったく同じ構成が正常に機能します。これは何ですか?
map::iterator は、演算子 * および -> を作成するためにラップされ、それぞれ OntologyClass オブジェクトとポインターを返します。
c++ - バリアントbstrからstd::stringへの変換のデフォルトのエンコーディング
MSXML DOMからプルされたバリアントbstrがあるので、UTF-16にあります。私はこの変換でどのデフォルトのエンコーディングが発生するかを理解しようとしています:
テストから、デフォルトのエンコーディングはWindows-1252またはAsciiのいずれかであると思いますが、確かではありません。
ところで、これは私が修正してバリアントをwstringに変換し、WideCharToMultiByteを呼び出してマルチバイトエンコーディングに移行するコードのチャンクです。
ありがとう!
c++ - エラーC2065:'cout':宣言されていない識別子
私はプログラミングの割り当ての「ドライバー」の部分に取り組んでいますが、このばかげたエラーが発生し続けます。
エラーC2065:'cout':宣言されていない識別子
std :: coutを使用しようとしましたが、次のような別のエラーが発生します: IntelliSense:名前空間stdを使用して宣言した場合、名前空間"std"にはメンバー"cout"がありません。iostreamが含まれています+ ostreamを使用しようとしました
私はそれが標準的な初心者の質問であることを知っていますが、これは私を困惑させ、私は初心者です(つまり、私は以前にプログラムしたことがあります...)
Visual Studio 2010を使用していて、Windows7を実行しています。すべての.hファイルには「usingnamespacestd」があり、iostreamとostreamが含まれています。