問題タブ [errno]
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.
ios - iOSシミュレーターでの基本的なソケットプログラミング
Beejのソケットチュートリアルを行っています。以下の呼び出しがsocket
iPhoneシミュレーターで機能しないのはなぜですか?
上記のコードの出力は次のとおりです。
errno2はNo such file or directory
です。これをどう解釈するかわかりません。
c++ - strtod は間違った入力で errno を設定しません
g++ (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
間違った入力でerrno
は 0 のままです。
EDITED:次はうまくいきます:
linux - rmdirがEEXISTまたはENOTEMPTYを返すかどうかを確認するにはどうすればよいですか?
ディレクトリを要求し、確認後、ディレクトリを削除するbashスクリプトを作成しようとしています。また、ディレクトリが空でないかどうかをユーザーに通知し、とにかく削除するかどうかを尋ねる必要があります。
rmdirを使用して戻り値をチェックし、ディレクトリが削除されていることを確認します。理由がない場合は、これまでのところ、どの戻り値がEEXISTまたはENOTEMPTYに相当するかわかりません。これまでのところ、私が返した唯一のエラー値は1です。
ディレクトリにファイルがある場合の戻り値はどうなりますか?
c - errno を設定する必要がありますか?
send
とに似たインターフェースをエクスポートするモジュールを書いていますrecv
。
これらの関数は送信バイト数と受信バイト数をそれぞれ返すことになっているため、通常のように適切なエラー管理を行うことができません (つまり、列挙型を使用してニーモニック値を返します)。
このような状況ではerrno
、標準ライブラリのように設定する必要がありますか? もしそうなら、それerrno
はスレッド固有なので、特定の書き方がありますか、それとも単純に値を割り当てることができますか?
編集:errno
実験して、割り当てによる設定が機能していることに気付きました。それでも:これはどのシステムでも安全で移植可能ですか?
c++ - C ++(g ++)の例外の引数としてerrnoを使用する予期しない制御フロー(コンパイラーバグ?)
C ++例外を使用してerrno状態を転送する場合、次のようなコードに対してg ++(4.5.3)によって生成されるコンパイル済みコード
かなり予想外です(Linuxではx86_64)
これが基本的に意味するのは、C ++例外の引数としてのerrnoは、__ errno_location(errnoのマクロコンテンツ)の呼び出しに先行する__cxa_allocate_exceptionの呼び出しのため、ほとんど役に立たないということです。 errno状態を保存します(少なくとも、libstdc ++のeh_alloc.ccにある__cxa_allocate_exceptionのソースを理解している限り)。
これは、メモリ割り当てが失敗した場合、実際に例外オブジェクトに渡されるはずだったエラー番号が、std::mallocが設定したエラー番号で上書きされることを意味します。std :: mallocは、終了が成功した場合でも、とにかく既存のerrno状態を保存することを保証しません-したがって、上記のコードは一般的な場合には間違いなく壊れています。
Cygwin、x86では、test()用にコンパイルされる(g ++ 4.5.3も使用する)コードは問題ありませんが、次のようになります。
これは、ライブラリコードが例外でerrno状態を適切にラップするために、次のようなものに展開されるマクロを常に使用する必要があることを意味しますか?
例外の場合の評価順序について何も述べていないC++標準の対応するセクションを実際に見つけることができないようですが、x86_64(Linuxの場合)でg ++で生成されたコードは、コンストラクターのパラメーターを収集する前の例外オブジェクトであり、これは何らかの形でコンパイラーのバグです。私は正しいですか、それともこれは私の側の根本的に間違った考えですか?
c - TCP接続エラー115操作中進行中原因は何ですか?
私のアプリケーションはTCP接続を作成します。これは正常に機能しています。しかし、1つのネットワークサーバーには多くのIPがあります
- 174.XXX
- このような54.xxx
TCP接続(60秒のタイムアウトで非ブロッキング)をIPに呼び出すと、174.X.X.X
常に成功します。しかし、IPを使用した同じサーバーへのTCP接続54.x.x.x
は(ほとんどの場合)失敗し、errno115measn操作が進行中です。
errno115の考えられる理由を教えてください
OS:Linux
私のTCP接続コードは次のとおりです
c - errno値は更新されません
ソケット関数への連続した呼び出し中にerrno値が更新されない場合、問題によって何が可能でしょうか?
1つ目はerrno=EINVALである必要があります2つ目はerrno=EPROTONOSUPPORTである必要があります
@JonathanLefflerによって以下に提供されるコードから、cygwinからの出力は次のようになります。
以下のコードは、ソケットを作成する前にソケットfd0を作成するように編集されています
結果は次のとおりです。
最初と最後のソケット作成は同じerrno値を持つ必要があります。
しかし、この出力はどのように説明できますか?5番目と6番目のソケット作成のerrno値は同じですが、エラーの原因は異なります。
実際のコードは次のとおりです。
c - エラーの説明をperror関数に追加する方法
どうすればエラースタックにエラーを追加できますか?
これが私が欲しいものの例です
c++ - 異なるシステム上のerrnoの場所
プログラムでerrno()のどの実装を使用すべきかについて混乱があります。
私の知る限り、標準のerrno()はerrno.hで定義されています。ただし、Visual Studioのstdlib.hにもerrno()があります。それは間違っているかもしれませんが、私にとってはstdlib.hのerrno()はerrno.hのものよりも高速です。ただし、errno()はstddef.hでも定義されています。
どちらを使うべきですか?#ifdef _WIN32 #include <stdlib.h> #else #include <errno.h> #endif
?
haskell - haskellのIOErrorからerrnoを取得するには?
私はHaskellプラットフォーム、GHC 6.12.1をDebian Squeezeにインストールされたapt-getとして使用しています。最初に発生した場所とは別のスレッドで必要な場合、IOError から基になる errno を取得するにはどうすればよいですか?
これが必要な理由は、ネットワーク上で実際の errno 値を公開するネットワーク プロトコルを実装しているためです。再構築する必要がありますか?