다음 소스를 VC++ 6.0에서와 VC2008에서 돌리면 결과가 약간 다르게 나옵니다.
도1도캣
다음 소스를 vs++ 6.0에서와 vc2008에서 돌리면 결과가 약간 다르게 나옵니다. 같은 소스를 microsotf visual c++ 6.0에서와 microsotf visual 2008돌리면 결과 진행이약간 다르게 나옵니다.질문 내용 :
#include stdio.h
int main(void)
{
int val[5];
int i,total;
for(i=0;i5;i++)
{
printf(\n);
printf(%d층에 사는 사람의 수 :, i+1);
scanf_s(%d\n, &val[i]);
}
total = val[0]+val[1]+val[2]+val[3]+val[4];
printf(사람의 수: %d \n, total);
return 0;
}
microsotf visual c++ 6.0
1층애 사는 사람의 수 : 5
2층애 사는 사람의 수 : 5
3층애 사는 사람의 수 : 5
4층애 사는 사람의 수 : 5
5층애 사는 사람의 수 : 5
이 아파트에 사는 사람의 총수는 : 25
microsotf visual 2008
1층애 사는 사람의 수 : 5
5(숫자를 한번 더넣어야 넘어간다.)
2층애 사는 사람의 수 : 5
3층애 사는 사람의 수 : 5
4층애 사는 사람의 수 : 5
5층애 사는 사람의 수 : 5
이 아파트에 사는 사람의 총수는 : 25
q: 같은 소스라도 다른게 되는 이유가 뭔지 궁금합니다.
왜 2008에서는 위에 빨간 글씨 로 된 부분 처럼 동작 하는지 모르겠습니다.
하지만 결과 같은 동일 합니다.
-
뿡뿡
scanf에서는 \\n을 사용하지 않습니다.