字符串中单引号和双引号有什么区别

 我来答
大宝妈谈教育
高粉答主

2020-03-30 · 关注我不会让你失望
知道小有建树答主
回答量:3306
采纳率:100%
帮助的人:48.9万
展开全部

1、含义不同。

单引号中的字符实际上表示一个整数,而整数值对应于编译器使用的字符集中该字符的序列值。一般来说,我们的编译器使用ASCII字符集。所以“s”的含义实际上与小数115的含义相同。

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

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

int_tmain(intargc,_TCHAR*argv[])

chartest1[]="yes";

inttest2='yes';

printf("%x\n", &test2);

inttest3='ye';

printf("%x\n", &test3);

inttest4='y';

printf("%x\n", &test4);

return0;

实验结果如下:

2、大小不同。

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

带双引号的字符串大小是字符的总大小+1,因为带双引号的字符串将二进制零字符'\0'添加到字符串的末尾。

扩展资料:

注意事项

matlab在定义字符串时直接使用类似

<span style="font-size:18px;">a='string';</span>

即可。但是如果需要定义的字符串中包含引号,如str'i'ng,定义为:

<span style="font-size:18px;">a='str'i'ng';</span>

则会报错。

其实,只需要把要定义单引号变成双引号即可。如:

<span style="font-size:18px;">a='str"i"ng';</span>

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

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

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

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

迷路的国王1989
推荐于2017-11-22 · TA获得超过2716个赞
知道小有建树答主
回答量:956
采纳率:50%
帮助的人:920万
展开全部

  你好,这个需要分情况讨论。


  在C语言或者Java这类型语言中,单引号代表字符,比如'1'代表字符1,而不是数字的1。双引号代表的是字符串,一个字符串是由多个字符组成的,比如"hello"就是6个字符组成的字符串。(是6个不是5个,因为字符串的末尾会加一个特殊的空字符'\0')


  在PHP这类型语言中,没有字符类型,只有字符串类型。单引号代表按原样输出。比如'hello\r\n',输出的就是hello\r\n。但如果是双引号,则会对其中的转义字符进行转换。比如还是刚才的字符串,由于\r\n是换行标记,所以双引号内的"hello\r\n"就会输出hello后再换行。


  -->您的采纳是我们的动力<--

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Polaris北斗
2016-09-18 · TA获得超过3204个赞
知道大有可为答主
回答量:2530
采纳率:79%
帮助的人:798万
展开全部
单引号是 字符
双引号是 字符串
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式