C 语言

补充fgets一个函数

2018-06-09  本文已影响0人  RicherYY
//测量字符串的长度
int GetsStrLength(char[]);
//fgets封装成一个函数,把\n替换成\0
void GetString(char [], int count);
//两个参数。一个是用来接收字符串的字符数组,接收的字符总数
void GetString(char str[], int count )
{
    //使用fgets函数接收字符串,使用\0替换字符数组的最后一位\n
    //首先定义fgets函数
    fgets(str, count, stdin);
    //查找\n
    char * find = strchr(str, '\n'); //查找换行符。并且得到了一个换行符的指针
    if (find)    //如果找到了if条件不为空
        *find = '\0';



}

int GetsStrLength(char str[])
{
    int count = 0; //字符串中的字符长度
    while(str[count] != '\0')         //不确定长度无法使用for给出条件,这个时候可以用while.是\0的情况下是最后一位
        {
                count++;
        }
    return count;
}

int main()
{
    char name1[50] = {};
    //fgets(name1, 5, stdin);
    GetString(name1,20);
    int len = GetsStrLength(name1);
    printf("字符串的长度是;%d\n",len);
    return 0;
}

结果

1234567
字符串的长度是;7

strchr就是返回\n所在的指针,如果找到就把\n的值改成\0

上一篇下一篇

猜你喜欢

热点阅读