首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在这个问题中,错误检查是如何工作的?

在这个问题中,错误检查是如何工作的?
EN

Stack Overflow用户
提问于 2019-12-08 20:37:38
回答 2查看 43关注 0票数 0
代码语言:javascript
复制
/*source: stralloc.c*/
#include <stdio.h>
#include <stdlib.h>
int main(void){
char *A;
int max=0;

//need to add error-checking
printf("enter max string length: ");
scanf("%d",&max);
while ((getchar())!='\n');
A=(char *)malloc(max+1); //room for \0
printf("enter string: ");
fgets(A,max,stdin);
printf("Third char is: %c\n",*(A+2));
//printf("Third char is: %c\n",A[2]));
exit(0);
}

我从班上得到了这段代码,但有一部分我不明白。while ((getchar())!='\n');在这个函数中做什么?

有人能给我解释一下吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-09 00:16:59

代码语言:javascript
复制
while ((getchar())!='\n');

程序执行继续在这一行,直到它收到新的行字符(即输入)‘\n’。‘'getchar()’方法等待直到收到来自键盘的输入。一旦收到输入,就会与( '\n‘)进行比较,如果输入不是’\n‘,则再次调用getchar()

流程图

票数 2
EN

Stack Overflow用户

发布于 2019-12-08 20:47:35

代码语言:javascript
复制
while ((getchar())!='\n');

上面的行意味着,它将一直从输入流中读取,直到遇到换行符'\n'

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59239685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档