返回传入字符串的长度

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<string.h>
 4 
 5 //返回传入字符串的长度
 6 int GetStrLength(char[]);
 7 
 8 //封装fgets<用来接收字符串的字符数组,接收的字符总数
 9 void GetString(char [],int count);
10 
11 void GetString(char str[],int count)
12 {
13     //使用fgets 函数接收字符串,使用\0替换字符数组的最后一位\n
14     fgets(str,count,stdin);
15 
16     //查找\n所在的指针
17     char * find = strchr(str,'\n');
18     if(find)   //找到了
19             *find = '\0';    //根据找到的指针,修改指向的元素为\0
20 }
21 
22 
23 int GetStrLength(char str[])
24 {
25     int count = 0;     //字符串的字符个数
26 
27     while(str[count] !=  '\0')
28     {
29        if(str[count] == '\n')
30         {
31             str[count] ='\0';   //替换
32 
33             break;
34 
35         }
36 
37         count++;
38     }
39     return count;
40 }
41 
42 
43 int main()
44 {
45 
46         //char names1[] = {'z','h','e','n','g','l','e','i','\0'};
47 
48         char names1[50];
49        // fgets(names1,9,stdin);   //9 表示最多输入 9-1 个字符       \0
50          GetString(names1,20);
51         int len = GetStrLength(names1);
52         printf("字符串的长度为:%d\n",len);
53 
54 }

 

posted on 2021-07-28 09:32  Bytezero!  阅读(135)  评论(0编辑  收藏  举报