具体的な意味は、
答えて
strchr()
関数は、文字列内の文字の最初の出現を指すポインタ、または文字が文字列内にない場合はnullポインタを返します。したがって、未定義の動作を回避するためにnullポインタであるかどうか最初にチェックすることなく、戻り値strchr()
を参照しないでください。
strchrnul()
の機能は、いくつかの点でstrchr()
とは異なります。まず、strchr()
は標準ライブラリ関数ですが、strchrnul()
ではなくglibc 2.1.1以降のGNU拡張です。この機能を有効にするには、機能テストマクロ_GNU_SOURCE
を定義する必要があります。第2に、strchrnul()
は、文字列中の文字の最初の出現を指すポインタを返しますが、文字が文字列内にない場合はヌルターミネータへのポインタ\0
が返されます。したがって、戻り値をstrchrnul()
から参照解除することは常に安全です。文字列内に文字がない場合、戻り値は文字列の終わり(終端ヌルバイト)を指し、このポインタの逆参照は0
の値になります。おそらく、関数strchrnul()
は、関数が検索された文字へのポインタまたはヌルバイトへのポインタを返すため、その名前を取得します。
「nullバイトを終了」というフレーズについて:C文字列は、char
の配列で、文字列の最後のがヌルバイトであるという特別な特性を持っています。もちろん、char
は、Cで1バイトの幅を持つことが保証されています。ヌルバイトは文字リテラル'\0'
で表されますが、ヌルターミネータまたはNULターミネータとも呼ばれます(この名前は実際にはエンコードされていますが、ASCIIとEBCDICで存在します)。 ;
C11§5.2.12
0に設定されたすべてのビットとバイトは、基本実行文字セットに存在するものとし、ヌル 文字と呼ばれる:標準と述べています文字列の終了には が使用されます。
- 1. は、具体的な方法
- 2. IOExceptionの具体的なケース
- 3. 具体的な実装
- 4. CsQuery - 具体的な名前
- 5. ファジーロジックの具体的な例
- 6. ユースケースモデリングの具体的なメリット
- 7. ポッドインストール、依存 `` *****任意の具体的な目標で
- 8. 具体的な意味を持つNULL値はどうすれば処理できますか?
- 9. 抽象的なpyomoモデルから具体的なモデルを具体化する
- 10. boost :: serialization :: traitsの具体的な例は?
- 11. より具体的なタイプは、コンストラクタ
- 12. ここでは具体的な数字
- 13. JSON.NETは、具体的なクラスに
- 14. 言葉の意味的な意味的距離
- 15. 具体的なクラスの動的プロキシ
- 16. 客観的な意味での意味は何ですか?
- 17. 具体的方法
- 18. [0、行]と[1、行]はどういう意味ですか?より具体的には[と]
- 19. システムが正常に機能していない(具体的には具体的ではない)
- 20. 意図的に無意味なMIMEタイプ
- 21. リファクタリングの具体的な視覚的な例は何ですか?
- 22. 新しい静的な意味は?
- 23. Json Parseの具体的な値
- 24. Pandas append()行の具体的な例
- 25. 具体的な実装のジェネリック
- 26. JavaFX ObservableList具体的な実装
- 27. 具体的なクラスとのインタフェース
- 28. 具体的なTHISタイプのアンビエントタイプスクリプト関数
- 29. 具体的な値を取得Laravel
- 30. KeystoneJSより具体的なフィルタリング
これは、通常はC文字列の最後のバイトである最初の '\ 0'のアドレスを返します。 – n0p
@ n0pなぜ答えではなくコメントとして回答を投稿していますか? –
@JesperJuhlどうしたの? – n0p