Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C GetInt()是否在此处自动创建\n输出?_C - Fatal编程技术网

C GetInt()是否在此处自动创建\n输出?

C GetInt()是否在此处自动创建\n输出?,c,C,假设我有一段代码,要求用户给出2个整数,当用户给出整数时,程序将打印总和 int main(void) { printf("Please give me an int: "); int x = GetInt(); printf("Please give me an int: "); int y = GetInt(); printf("%d\n", x + y); } 当我运行程序时,所有三个printf都显示在单独的行上 我的问题:我不明白的是,为什么前两个printf不需要\n

假设我有一段代码,要求用户给出2个整数,当用户给出整数时,程序将打印总和

int main(void)

{ 
printf("Please give me an int: "); 
int x = GetInt();

printf("Please give me an int: "); 
int y = GetInt();

printf("%d\n", x + y); 
}
当我运行程序时,所有三个printf都显示在单独的行上


我的问题:我不明白的是,为什么前两个printf不需要\n才能移动到新行,而第三个printf需要\n

前两个的
\n
由用户在输入号码后按enter键时提供。

您的GetInt()函数可能正在使用用户输入创建新行。这取决于
GetInt()
正在做什么。您可以发布
GetInt()
的代码吗?如果您是
GetInt()
正在从stdin读取(使用
scanf
)然后,当您按Return键时,shell正在添加换行符。请尝试在没有换行符或中间有scanf的情况下依次添加两个
printf
。如果您认为答案正确,则应接受下面的答案。