c语言中判断字符串的长度,利用数组和利用指针。
1、利用数组。
#include <stdio.h> int len(const char x[]) { int len = 0; while(x[len]) len++; return len; } int main(void) { char str[128]; printf("str: "); scanf("%s", str); printf("length: %d\n", len(str)); return 0; }
2、利用指针
#include <stdio.h> int len2(char *x) //利用指针作为形参,指针x指向传入的数组的第一个元素,其行为和数组str一样,x++指针依次向后推移,知道*x=0, 测试循环体执行了字符个数的次数 { int len = 0; while(*x++) //指针的推移控制循环变量,直到*x为null, len++; //循环体记录字符个数 return len; } int main(void) { char str[128]; printf("str: "); scanf("%s", str); printf("length: %d\n", len2(str)); return 0; }
↓
#include <stdio.h> int leng(const char *x) { int len = 0; while(*x++) len++; return len; } int main(void) { char *str = "abcde"; //利用指针实现数组 printf("length: %d\n", leng(str)); return 0; }