问答详情
源自:5-2 Linux C 动态数据结构-动态链表

求大神指点

s_gets(char * st, int n)

{

    char * ret_val;

    char * find;

    ret_val = fgets(st, n, stdin);

    if (ret_val)

    {

        find = strchr(st, '\n');

         if(ret_val)

            * find = '\0';

        else

            while (getchar() != '\n')

                contine; 

    }

return ret_val;

}

我想问一下find = strchr(st, '\n')只是查找了\n ,整个函数并没有提到字符串的结束标志\0,

else为什么判断的\0,并将\0之后的所有输入都丢弃这是怎么实现的呢?


提问者:qq_愿时光安好_04050009 2017-01-30 13:44

个回答

  • 慕粉2142279370
    2017-02-07 12:18:24

    没学,看不懂哈哈