【发布时间】:2015-08-22 17:07:58
【问题描述】:
在以下两个代码中,我无法理解问题所在。 第一个代码是:
#include <stdio.h>
main() {
int num1, num2;
scanf("%d%d", &num1, &num2);
printf("I LOVE MY INDIA\n"); //here is '\n' after the statement
printf("%d", num1/num2);
return 0;
}
如果输入是num1=2 和num2=0,那么在 gcc 编译器中输出是:
我爱我的印度
浮点异常(核心转储)
但是对于第二个代码:
#include <stdio.h>
main() {
int num1, num2;
scanf("%d%d", &num1, &num2);
printf("I LOVE MY INDIA"); //here is no '\n'
printf("%d", num1/num2);
return 0;
}
对于与之前显示的相同的输入:
浮点异常(核心转储)
在这两个代码之间只有一个区别。在第一个代码中有一个\n 在I LOVE MY INDIA 之后,而在第二个代码中没有\n。
请解释为什么I LOVE MY INDIA 没有显示在第二个代码中。
【问题讨论】: