c语言求字符串数组的长度的函数,C语言中用于计算数组长度的函数 “strlen() ”。...

de>#include

#include

#define MAX_LEN 255

int my_strlen1(const char* str);

int my_strlen2(char* str);

int main()

{

char str1[MAX_LEN];

printf("Please input the string you want to strlen:\n");

fgets(str1,256,stdin);

printf("Length of %s is %d\n",str1,my_strlen1(str1));

char* str2="Hello,world!";

printf("Length of %s is %d\n",str2,my_strlen2(str2));

exit(EXIT_SUCCESS);

}

/*strlen,定义变量的写法*/

int my_strlen1(const char* str)

{

int len=0;

while(*(str+len)!='\0')

len++;

return len;

}

/*strlen,不用变量,递归的写法*/

int my_strlen2(char* str)

{

if(*str=='\0')

return 0;

else

return (1+my_strlen2(++str));

}de>

de>/*zj@zj:~/C_parm/string/own_str$ gcc -o strlen strlen.c

zj@zj:~/C_parm/string/own_str$ ./strlen

Please input the string you want to strlen:

hello,world!

Length of hello,world!

is 13

Length of Hello,world! is 12

*

*聪明的你也许发现那里有点不对劲了,对一个是12,一个是13!

其实strlen是不计算最后的字符串结束符'\0'的,那为什么有13呢?

看输出就知道了,有个换行符号,对就是你输入时的结束符,回车了哦*/de>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值