23

重複の可能性:
C文字列の\ 0記号はどういう意味ですか?

私はiPhone開発の初心者です。私は知りたいのですが、 C'\0'で何を意味するのか、そしてObjectiveCでそれと同等のものは何ですか。

4

7 に答える 7

23

ヌル文字'\0'( もnull terminator) は と省略さNULれ、値が の制御文字ですzeroCObjective Cでも同じです

この文字は C でははるかに重要であり、ヌル終了文字列stringと呼ばれることが多い、末尾を示すために使用される予約文字として機能します。

C 文字列(文字を含み、文字で終了する配列)の長さは、 (最初の) NUL バイト'\0'を検索することによって検出されます。

于 2013-01-22T15:09:49.950 に答える
11

C では、\0値ゼロの文字を示します。以下は同一です。

char a = 0;
char b = '\0';

このエスケープ シーケンスの有用性は、文字の配列である文字列リテラル内でより大きくなります。

char arr[] = "abc\0def\0ghi\0";

(文字列リテラルには非表示の暗黙の終端ゼロが含まれているため、この配列の末尾に2 つのゼロ文字があることに注意してください。)

于 2013-01-22T15:12:29.173 に答える
6

内側の'\0'文字リテラルと文字列リテラルは、コード ゼロの文字を表します。C と Objective C での意味は同じです。

たとえば、配列初期化子で を使用\0して、null で終わる文字列に相当する配列を作成できます。

char str1[] = "Hello";
char str2[] = {'H', 'e', 'l', 'l', 'o', '\0'};

一般に、ASCII 文字を8 進数表記で\ooo表すためにを使用できます。ここで、 s は最大 3 桁の 8 進数を表します。o

于 2013-01-22T15:10:21.140 に答える
5

C 言語にとって、は整数定数(同じ値 0、同じ型)'\0'とまったく同じことを意味します。0int

コードを読んでいる人には、'\0'この特定のゼロを文字として使用することを計画していることを書いていることが示唆されます。

于 2013-01-22T15:39:57.043 に答える
3

\0ゼロ文字です。Cほとんどの場合、文字列の終了を示すために使用されます。もちろん、通常の文字であり、そのように使用されることもありますが、これはまれです.

の組み込み文字列操作関数の単純なバージョンでは、C文字列が null で終わる (または で終わる\0) 必要があります。

于 2013-01-22T15:09:57.563 に答える
0

Cでは、値が 0 の文字を表すデータ型に\0格納される文字リテラル定数です。int

Objective-C は C の厳密なスーパーセットであるため、この定数は保持されます。

于 2013-01-22T15:13:12.050 に答える
-4

「\0」はNULLC の文字であることを意味します。不明ですObjective-Cが、おそらく同じです。

于 2013-01-22T15:10:22.947 に答える