答えて
論理否定演算
!
の結果は、オペランドの値が0と等しい場合、結果はint
型を持つオペランドの値が0に等しくない比較した場合、0です。
C89/C90、C99、C11に表示されます。
あなたはこれを見つけたリンクを追加できますか? – AustinWBryan
http://port70.net/~nsz/c/c89/c89-draft.html#3.3.3.3 –
ありがとうございました! – susdu
ホッブズさんの答えによると、section 6.5.3.3.5 of the C standardは!0
が1
と評価されています。
さらに、この動作は、!!x
の式を使用して整数をブール値(つまり0
または1
のいずれか)に正規化するために使用できます。
- 場合
x
=0
、!!x
=!!0
=!1
=0
。 - とき
x
!=0
、!x
=0
、そう!!x
=!0
=1
。論理的にブール結果が得
- 1. Falseが "0"、Trueが "1"であることが保証されていますか?
- 2. boolは1バイトであることが保証されていますか?
- 3. Androidでは、AbstractWindowedCursor.isBlob()は正しいことが保証されていますか?
- 4. Argsはnull以外であることが保証されていますか?
- 5. GCCで自動変数はどのように初期化されますか?それらは0であることが保証されていますか?
- 6. FileInfo.CopyTo/File.Copyは成功することが保証されていますか?
- 7. QRコードは動作することが保証されていますか?
- 8. 式(0 == 0&1 == 1)がFalseに評価されるのはなぜですか?
- 9. request.getServletPath()によってサーブレットパスが返され、正規化されることが保証されていますか?
- 10. アンドロイドサービスがonDestroy()を呼び出すことは保証されていますか?
- 11. ルビで1 && 0が0のときに0 && 1が1になるのはなぜですか?
- 12. xml2jsは同期していることが保証されていますか?エラーが発生しますか?
- 13. C++:ノードベースであることが保証されているstd :: unordered_mapですか?
- 14. アンカータグクリックハンドラで作成されたXHR要求が送信されることが保証されていますか?
- 15. このC#コードは型保護されていないのですが、なぜこの他のビットが型保証されていますか?
- 16. タブで "SelectedIndexChanged"が必ず "クリック"の前にトリガーされることが保証されていますか?
- 17. これは工場パターンとして保証されていますか?
- 18. ENUM( "0"、 "1")がMysqlに空の文字列として保存されるのはなぜですか?
- 19. uint8_t、uint16_tはそれぞれ8ビットと16ビットであることが保証されていますか?
- 20. ポインタはある値以上になることが保証されていますか?
- 21. 証明書の拇印は小文字であることが保証されていますか
- 22. ブロードキャストレシーバは、ブロードキャストアナウンスを受信することを保証されていますか?
- 23. テンポラリオブジェクトのサブオブジェクトは、返されて移動することが保証されていますか?
- 24. std :: shared_ptr deleterが実行されるまでに弱いポインタが期限切れになることは保証されていますか?
- 25. ネストされたアトミック操作はアトミックであることが保証されていますか?
- 26. boost :: asioのasync_ *のハンドラが常に呼び出されることは保証されていますか?
- 27. !0と!1は1と0よりも優れていますか?
- 28. C++ 11は、死にかけているオブジェクトが引数としてコピーされるのではなく移動されることを保証しますか?
- 29. ホスト名は有効なWindowsディレクトリ名であることが保証されていますか?
- 30. アクティビティがもう実行されていないときにonPauseが呼び出されることが保証されていますか?
ビルトイン演算子は( '<', '>' '<=', '> ='、 '==' '!='、 '&&'、 '||' '!')常に正確に得'int'型の' 0'または '1'です。 'isdigit()'のような特定のライブラリ関数は、falseの場合は '0'を返し、trueの場合はゼロ以外の値を返します。 –