C语言中'a'和"a"有什么区别?

Python07

C语言中'a'和"a"有什么区别?,第1张

1、本质区别

双引号里面的是字符串, 而单引号里面的代表字符。

2、输出区别

str = “a”输出的就是a这个字母;

str = ‘a’输出的测试65

3、底层区别

用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。

扩展资料:

C语言中的转义字符

在字符集中,有一类字符具有这样的特性:当从键盘上输入这个字符时,显示器上就可以显示这个字符,即输入什么就显示什么。这类字符称为可显示字符,如a、b、c、$、+和空格符等都是可显示字符。

另一类字符却没有这种特性。它们或者在键盘上找不到对应的一个键(当然可以用特殊方式输入),或者当按键以后不能显示键面上的字符。其实,这类字符是为控制作用而设计的,故称为控制字符。

在C语言中,构成字符常量的控制字符必须用转义字符表示。转义字符是一种以“\”开头的字符。例如退格符用'\b'表示,换行符用'\n'表示。

转义字符中的'\'表示它后面的字符已失去它原来的含义,转变成另外的特定含义。反斜杠与其后面的字符一起构成一个特定的字符。

转义字符是C语言中表示字符的一种特殊形式。转义字符以反斜'\'开头,后面跟一个字符或一个八进制或十六进制数表示。转义字符具有特定的含义,不同于字符原有的意义,故称转义字符。

通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号('),用于表示字符串常量的双撇号(")和反斜杠(\)等。

参考资料来源:百度百科-C语言

C语言中没有String的类型,不过是有String这个概念,C语言的字符串也是char类型存储。

C语言中"a"表示一个字符串,在内存中存储为 'a' '\0' 两个字符,大小为2字节。

C语言中'a'表示一个字符,在内存中存储为 'a' 一个字符,大小为1字节。

扩展知识:

在C语言中可以用char类型的指针来存储任意长度的字符串!比如:char * myStr="Hello,C!"。

如果你用char型数组来存储字符串,请注意你的数组的长度要比你将要存储的字符串长度至少大1.

'a' 代表的是字符常量 可以单独使用

没有引号的时候 只是一个字符,可以用作标识符

比如

int a

也可以和其它字符连用 如0xa 表示16进制常量。