笔试面试5 实现C库函数strlen

这是个非常简单的问题。

strlen(str)就是计算str一共有多少个字符。

而字符串存放的时候,会在最后一个字符的后面加一个'\0'。

利用这个即可编写自己的strlen函数。

源码:

#include<stdio.h>
#include <conio.h>
int MyStrlen(char str[]){
	if(str==NULL)//判断str是否有效 
	 	return 0;
	int counts=0;//直接以counts作为计数器
	while(str[counts++]!='\0')
           ;
	return counts-1;
	
}
int main()
{
 	char str1[]="hello";	//5
	char *str2="OK";//2
	char *str3="";//0
	char *str4;//0
	printf("str1=%s\n",str1);
	printf("strlen(str1)=%d\n",MyStrlen(str1));
	
	printf("str2=%s\n",str2);
	printf("strlen(str2)=%d\n",MyStrlen(str2));
	
	printf("str3=%s\n",str3);
	printf("strlen(str3)=%d\n",MyStrlen(str3));
	
	printf("str4=%s\n",str4);
	printf("strlen(str4)=%d\n",MyStrlen(str4));
 	getch();
	 
	 
}

测试结果:




——————————————————————————————————————————————————————————————————

//写的错误或者不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。

转载请注明出处:http://blog.csdn.net/qq844352155

author:天下无双

Email:coderguang@gmail.com

2014-11-5

于GDUT

——————————————————————————————————————————————————————————————————




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值