C GetInt()是否在此处自动创建\n输出?
假设我有一段代码,要求用户给出2个整数,当用户给出整数时,程序将打印总和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
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
。如果您认为答案正确,则应接受下面的答案。