-2

私は次のコードを持っています:

int main() { 
     char x='a';
     printf("integer = %ld\ncharacter  = %ld\nx = %ld\n", sizeof(int),sizeof('a'),sizeof(x);  
     return 0;  
}

出力は次のとおりです。

整数 = 4
文字 = 4
x = 1

私の質問は、char 変数 xのサイズが'a' のサイズと等しくない理由です。

実際に違いをもたらすものは何ですか?

助けてくれてありがとう

4

1 に答える 1

3

C では、1 文字の定数 ('a'または など'0') の型intが notであるためcharです。これは、タイプが である C++ では異なりcharます。

于 2013-03-03T21:32:22.623 に答える