看的不是很懂
下面这个模块看着有点懵,有没有能帮忙人肉调试下的char * 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(find)
*find = '\0';
else
while(getchar() != '\n')
continue;
}
return ret_val;
} 本帖最后由 405794672 于 2020-6-16 10:23 编辑
返回字符地址的函数:
传入一个字符地址,一个整型变量
定义两个字符地址
第一个字符地址等于传入的字符地址,该地址存的字符为输入缓冲区的一行字符,并不超过n-1个
如果第一个字符地址不为0
第二个字符地址等于搜索传入的字符地址中回车键的位置
如果有(不为空)
第二个字符地址处的值填0(把回车改成0)
否则
继续在缓冲区获取字符(如果没有回车的话)
继续(这条似乎多余)
返回第一个字符地址。
页:
[1]