首页 > 代码库 > 求字符串长度 strlen(数组指针两种方式)
求字符串长度 strlen(数组指针两种方式)
问题:
求字符串中所含有字符的个数(包括空格),即求字符串长度;
#include <stdio.h>#include <assert.h>int _strlen(const char* str){ assert(str != NULL); int i=0; for(;*str++!=‘\0‘;i++); //for(;str++!=NULL;i++);//有些说这句也可以,但执行结果是死循环,str++即使越界也未必为NULL; return i;}int _strlen2(const char str[]){ assert(str != NULL); int i=0; while(str[i] != ‘\0‘) i++; return i;}int main(){ char tmp[] = "dsgrfr s00w e324 sd! ";//不管是tmp[]还是tmp*,字符串最后都会有‘\0‘; int lenth = _strlen(tmp); int lenth2 = _strlen2(tmp); printf("the string length1 is:%d\n",lenth); printf("the string length2 is:%d\n",lenth2); return 0;}
输出如下:
[root@admin Desktop]# ./a.outthe string length1 is:22the string length2 is:22[root@admin Desktop]#
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。