补充fgets一个函数

//测量字符串的长度
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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容