正确的答案是5,题目选项有误。
成都创新互联公司是一家专业从事成都网站制作、成都做网站、外贸营销网站建设、网页设计的品牌网络公司。如今是成都地区具影响力的网站设计公司,作为专业的成都网站建设公司,成都创新互联公司依托强大的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、营销型网站建设及网站设计开发服务!
首先strlen()函数返回的长度是不包含'\0',
第一个字符为:a
第二个字符为:b
第三个字符为:\n (换行符)
第四个字符为:2
第五个字符为:\ (\\转义为\)
所以答案为5。
(下图为实际代码演示)
扩展内容:
strlen()函数(C语言函数):
strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。
参考资料:strlen函数 - 百科
1、首先打开vs2014, 新建一个项目。
2、然后我们根据图示代码新建一个main函数。
3、然后我们根据图示代码添加头文件。
4、然后我们根据图示代码添加main函数。
5、然后我们根据图示代码定义int变量len。
6、然后我们根据图示代码定义char类型变量str。
7、然后我们根据图示代码使用scanf给str赋值。
8、然后我们根据图示代码定义一个求字符串长度的函数。
9、然后我们根据图示代码求len。
10、然后我们根据图示代码使用printf打印len。
11、然后我们运行程序,看看输出结果。
思路:因为字符串都是以'\0'作为结束标志,所以可以从字符串的第一个位置开始遍历,直到出现'\0'停止遍历,并每次下标后移,字符串的长度加1,最后返回字符串长度。
参考代码:
#include "stdio.h"
int strlen(char *s){//求字符串长度函数
int n;
for(n=0;s[n]!='\0';n++);
return n;
}
int main() {
char a[100];
gets(a);
printf("%d\n",strlen(a));
return 0;
}
/*
运行结果:
wqerqew
7
*/
在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统,其中函数的类型指的是函数返回值的类型。对象的类型决定该对象可取值的集合以及可以对该对象执行的操作。
C语言提供了下列几种基本数据类型
下表列出了关于字符类型的存储大小和值范围的细节:
下表列出了关于整数类型的存储大小和值范围的细节:
注:当用 long 或 short 限定符限定整型时,关键字 int 可以省路,通常很多人也习惯这样做。
下表列出了关于标准浮点类型的存储大小、值范围和精度的细节:
注:上述内容皆适用于常见的64位系统,对于其他具体机器,可能会出现不同存储大小。
short 与 long 两个限定符的引入可以为我们提供满足实际需要的不同长度的整型数。 int 通常代表特定机器中整数的自然长度。编译器可以根据硬件性能特性自主选择合适的类型长度,但要遵循下列限制: short 与 int 类型至少为16位,二 long 类型至少位32位,并且 short 类型不得长于 int 类型,而 int 类型不得长于 long 类型。
类型限定符 signed 与 unsigned 可用于限定 char 类型或任何整型。 unsigned 类型得数总是正值或0,并遵守算数模2^n,其中n是该类型占用的位数。例如,如果 char 对象占用8位,那么 unsigned char 类型变量的取值范围是0~255,而 signed char 类型变量的取值范围则为-128~127(在采用二进制补码的机器上)。不带限定符的 char 类型对象是否带符号取决于具体的机器,但可打印字符总是正值。
long double 类型表示高精度浮点数。同整型一样,浮点型的长度也取决于具体的实现, float 、 double 与 long double 类型可以表示相同的长度,也可以表示两种或三种不同的长度。
有关这些类型长度定义的符号常量以及其他与机器和编译器有关的属性可以在标准头文件 limits.h 与 float.h 中找到。