扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
最好的方法是自己编写一个函数。如果你要偏方的话,我以前用过这样一个偏方(VC6):先用itoa函数将其转换成字符串,在用strlen函数,求字符串的长度。 这两个函数:itoa是在stdlib.h中定义的. strlen是在string.h中的 例子: int num=999; char buff[20]; int len; itoa(num,buff,10); len=strlen(buff);
创新互联是专业的防城网站建设公司,防城接单;提供成都网站设计、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行防城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
希望采纳
C语言中字符串长度的函数是strlen(),一个字符的长度为1;
函数原型:
unsigned int strlen (char *s);头文件:
#include string.h参数说明:s为指定的字符串;
功能说明:strlen()用来计算指定的字符串s 的长度,不包括结束字符'\0';
返回值:返回字符串s 的字符数;
注意:strlen() 函数计算的是字符串的实际长度,遇到第一个'\0'结束。
示例:
#includestdio.h#includestring.hint main(){ char str[] = "ab\nxyz";//\n为回车字符,占一个字节 printf("strlen(str)=%d\n", strlen(str)); return 0;}//输出结果:strlen(str)=6 收起
1、在c语言中,可以通过库函数strlen来计算字符串的长度,也可以通过循环计数来求取字符串长度。
函数原型:unsigned
int
strlen(char
*str);
功
能:统计字符串str中字符的个数,不包含'\0'
返
回
值:返回字符个数
2、用strlen函数实现:
char str[20];
int len; // 保存数组的长度
scanf("%s", str);
len = strlen(str); // 计算字符数组str的长度
注:需将头文件#include
添加进源文件中。3、用循环来实现:
char str[20];
int len=0; // 保存数组的长度
scanf("%s", str);
while(str[len] != '\0') // 未检测到结束字符
{
len++; // 统计字符数组str的长度
}
用 sizeof 可以获得数据类型或变量在内存中所占的字节数。同样,用 sizeof 也可以获得整个数组在内存中所占的字节数。因为数组中每个元素的类型都是一样的,在内存中所占的字节数都是相同的,所以总的字节数除以一个元素所占的字节数就是数组的长度。
比较特别的是,比特右移()运算符可以是算术(左端补最高有效位)或是逻辑(左端补0)位移。例如,将11100011右移3比特,算术右移后成为11111100,逻辑右移则为00011100。
运算符的优先级从高到低大致是:单目运算符、算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符(=)和逗号运算符。
C语言特点:
其一,广泛性。C语言的运算范围的大小直接决定了其优劣性。C语言中包含了34种运算符,因此运算范围要超出许多其它语言,此外其运算结果的表达形式也十分丰富。
其二,简洁性。9类控制语句和32个关键字是C语言所具有的基础特性,使得其在计算机应用程序编写中具有广泛的适用性,不仅可以适用广大编程人员的操作,提高其工作效率,同时还能够支持高级编程,避免了语言切换的繁琐。
十进制数字个数 和长度 有多种方法 算得。
下面用两种方法计算。负数有个符号位,长度比位数多 m=1。
占内存的大小用sizeof(int) 可得,通常 32位机为4字节,64位机为8字节。
例如:
#include stdio.h
int main(){
int a=123456;
int n,m=0;
char s[60];
if (a0) m=1;
sprintf(s,"%d",a);
n = strlen(s);
printf("a has digit %d length %d\n",n-m,n);
n=0;
while (1){
a = a/10;
n++;
if (a==0)break;
}
printf("a has digit %d length %d\n",n,n+m);
printf("int has %d bytes\n",sizeof(int) );
return 0;
}
正确的答案是5,题目选项有误。
首先strlen()函数返回的长度是不包含'\0',
第一个字符为:a
第二个字符为:b
第三个字符为:\n (换行符)
第四个字符为:2
第五个字符为:\ (\\转义为\)
所以答案为5。
(下图为实际代码演示)
扩展内容:
strlen()函数(C语言函数):
strlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。
参考资料:strlen函数 - 百科
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流