【发布时间】:2017-03-16 06:19:46
【问题描述】:
我正在尝试将我对 getchar 的使用切换到 fgets,但是在使用 getchar 时,整个代码都不起作用。
//fgets(line, sizeof(line), stdin);
while(fgets(line, sizeof(line), stdin))
{
portNum[sizeof(line)] = (char)line;
}
while((c = getchar()) != '\n')
{
portNum[num++] = c;
}
portNum[num] = '\0';
我怎样才能使这两个功能相等才能正常工作?
【问题讨论】:
-
对于
fgets(line, sizeof(line), stdin),第二个参数是Maximum number of characters to be copied into str (including the terminating null-character).。给它一个定义的值。此外,fgets将继续阅读,直到遇到换行符。不需要while循环。 -
portNum[sizeof(line)] = (char)line;你知道你在做什么吗?
标签: c while-loop fgets getchar