C语言 字符串“ab\n012\\\”的长度是多少

如题所述

字符串的长度为8,本题的最后少了一个双引号编译不通过,加上双引号之后编译通过,运行后的结果为8。所以说字符串的长度为8。

字符串或串是由数字、字母、下划线组成的一串字符。一般记为 s=“a1a2···an”(n>=0)。它是编程语言中表示文本的数据类型

字符串赋值有一定要求,例如C语言的运算符根本无法操作字符串。在C语言中把字符串当作数组来处理,因此,对字符串的限制方式和对数组的一样,特别是,它们都不能用C语言的运算符进行复制和比较操作。

扩展资料:

C语言中,字符串的表现形式有两种:一种是以字符数组的形式,如char str[20]=“I love china”;另一种是以字符指针的形式,如char *str=“I love china”。字符串可以赋值给字符指针变量,或者将字符串用字符数组保存。

c语言没有直接对字符串提供语法糖方面的支持。而且C标准库很多方法处理字符串是以空字符结尾为前提的,这个必须要记住。

C语言的运算符根本无法操作字符串。在C语言中把字符串当作数组来处理。

C语言的缺点:

1、C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。

2、C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-05
此题最后少了个双引号的后引号或前面多了一个双引号的前引号,所以不能通过编译。若是"
ab\n012\\\""这样则长度是8——a、b、\n、0、1、2、\\、\"共8个字符。本回答被提问者采纳
第2个回答  2020-04-15
在字符串中,反斜杠是转义符,所以第一个字符串\\长度是1,\n是长度也是1
第二个字符串中,"\016","\0"都被认为是一个字符,所以长度是3(\0标记结束,后面忽略),
而在解析第一个字符串的时候\n已经被解析完毕,012被认为是字符串内容,而不是转译内容了。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网