美文网首页C 语言
补充fgets一个函数

补充fgets一个函数

作者: RicherYY | 来源:发表于2018-06-09 19:24 被阅读0次
    //测量字符串的长度
    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

    相关文章

      网友评论

        本文标题:补充fgets一个函数

        本文链接:https://www.haomeiwen.com/subject/fzqjsftx.html