C语言中双引号与单引号的区别

作者&投稿:孙选 (若有异议请与网页底部的电邮联系)
C语言单引号和双引号区别?~

你好,
c语言中用双引号引起来的,叫字符串常量,以一个看不见的'\0'结尾。
用单引号引起来的,叫字符常量,主要是查ASCII码表,一共有0~127,共128个,是大佬们特意凑出128个的。
祝你生活愉快。

单引号用于界定字符常量
双引号用于界定字符串常量
例如,在C中的头文件名称、输入输出函数的格式控制符等都属于字符串,所以要用双引号界定

1、含义不同。

用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。而一般我们的编译器采用的都是ASCII字符集。因此's'的含义其实和十进制数115的含义是一致的。

而用双引号引起的字符串,代表的是一个指向无名数组起始字符的指针。

例如:分别查看”yes”/’yes’/’ye’/’y’四种字符在内存中的存储形式,代码如下:

int _tmain(int argc, _TCHAR* argv[])

char test1[] = "yes";

int test2 = 'yes';

printf("%x
", &test2);

int test3 = 'ye';

printf("%x
", &test3);

int test4 = 'y';

printf("%x
", &test4);

return 0;

实验结果如下:

2、大小不同。

用单引号引起的一个字符大小就是一个字节。

而用双引号引起的字符串大小是字符的总大小+1,因为用双引号引起的字符串会在字符串末尾添加一个二进制为0的字符'\0'。

拓展资料

双引号里面的是字符串 而单引号里面的代表字符,只要是在双引号里面的不代表任何表达式的意义:

假如 int a=10 cout<<"a";这是用双引号,它在屏幕上就是 a

而 int a=10 cout<<a; 这个a就代表表达式a=10在屏幕上是10

而int a=10 cout<<‘a’;将会是65,因为用单引号里面的代表字符,而字符要用ASCII码表示



用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与0141或97严格一致。

而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。 而类似"ILikeC++"(或"g")则表示一堆(或一个)字符串。

拓展资料:单引号一个数,代表一个字符,如果单引号内是数值,那输出的结果是ASCII码中对应的字符;双引号一个字符或几个字符,代表是一个字符串。



C语言中的单引号和双引号含义迥异,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与0141或97严格一致。而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。

C语言中的单引号和双引号含义迥异,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与0141或97严格一致。而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符‘\0’初始化。

双引号是全部引用字符串
单引号是引用ASC2码

C语言中双引号与单引号的区别
答:1、含义不同。用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。而一般我们的编译器采用的都是ASCII字符集。因此's'的含义其实和十进制数115的含义是一致的。而用双引号引起的字符串,代表的是一个指向无名数组起始字符的指针。例如:分别查看”yes”/...

c语言双引号和单引号有什么区别?
答:1、本质区别 双引号里面的是字符串, 而单引号里面的代表字符。2、输出区别 str = “a”输出的就是a这个字母;str = ‘a’输出的测试65 3、底层区别 用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。

c语言中单引号和双引号有什么区别
答:双引号用来括起一个字符串,如"China";单引号原来括起一个字符,如'f'。二者含义不同,不能混用。

双引号和单引号有什么区别啊?
答:1. 基本区别:双引号用于定义字符串,而单引号用于定义单个字符。2. 输出差异:当变量 `str` 被赋值为 `"a"` 时,它输出的是字符串 "a";而当 `str` 被赋值为 `'a'` 时,输出的是字符 'a',其ASCII码值为65。3. 底层机制:在C语言中,单引号标记的单个字符实际上被当作整数来处理,其...

c语言中单引号和双引号
答:1. 单引号括起来的称为字符,双引号括起来的称为字符串,系统会在字符串的末尾自动添加\0。2. 单引号占用的字节数就是其中包含的字符数量。3. 双引号占用的字节数是字符数量加一。

c语言单引号和双引号
答:单引号括起来的是字符,双引号括起来的是字符串,系统自动在后面加上\0。单引号占用字节数就是所有字符的数量,双引号为字符数量+1

C语言中“”和''有什么区别?加上和不加上有什么区别?
答:双引号括起的叫 字符串常量,代表的是一个指向无名char型数组 的指针,它含的内容是一个字符串,并带有一个字符串结束符。单引号括起的叫 字符常量,相当一个一字节长的整型数值。字符是ASCII字符集中的字符以及“转义字符”。字符串常量例子: “abc" (占内存4字节,字符串长度3);“a" (占...

C语言单引号和双引号区别?
答:你好,c语言中用双引号引起来的,叫字符串常量,以一个看不见的'\0'结尾。用单引号引起来的,叫字符常量,主要是查ASCII码表,一共有0~127,共128个,是大佬们特意凑出128个的。祝你生活愉快。

c语言中引号的作用
答:c语言中引号分为单引号和双引号。双引号里面的是字符串。而单引号里面的代表字符。单引号和双引号的区别:(1)。含义不同。单引号引起的一个字符代表一个整数,整数值对应于该字符在ASCII字符集中的序列值;双引号引起的都是字符串,哪怕只有一个字符也是字符串,双引号引起的一个字符代表一个指向...

C语言中双引号与单引号的区别
答:C语言中的单引号和双引号含义迥异,用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值,因此,采用ASCII字符集的编译器而言,‘a’的含义与0141或97严格一致。而用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二...