【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 130
■ このスレッドは過去ログ倉庫に格納されています
0829デフォルトの名無しさん
2007/01/29(月) 05:24:24つまり{'A','B','C','D'}という4つの文字定数をダブルクォーテーションを使うと
"ABCD"と一つの文字列で簡単に表現できるわけだ。
更に詳しく言うと>>826が書いているが、文字列は最後に自動的に必ず'\0'が付いて
「文字はこれ以上ありませんよ」とコンピューターに教えてあげるようになっている。
だから厳密に言うと{"A","B","C","D","\0"}の5つの文字定数を
"ABCD"と表現しているわけだ。
それで
char a='A';と宣言できても
char a="A";とは宣言できない。
なぜなら後者は実際には{'A','\0'}の2文字あるのだから一文字ですよと
宣言する a とは記述できない。
""を使いたいのならば
char a[]="A";として「これは文字列なんですよ」と宣言しないといけない。
解った?
■ このスレッドは過去ログ倉庫に格納されています