, 나는 형식은 내 프로그램에서 루프가 다음의 경우 (N> 0) 문을 사용하여에는 루프 속보가 아닌 문자 현재
#include<stdio.h>
int main()
{
int n;
while(1)
{
printf("Enter a positive number, n");
scanf("%d",&n);
if(n>0)
{
break;
}
}
}
내 의도를 사용자가 양의 정수를 입력하는 경우에만 루프를 종료하는 것입니다. 그러나 사용자가 문자 "g"를 입력하면 ASCII 값이 해석되어 루프가 계속 중단됩니다. 사용자가 n에 대해 양의 정수 값을 입력 할 때 중단되도록이 루프를 어떻게 구성합니까?
내 경우에는 "g"또는 임의의 문자를 입력 할 때 깨지 않을 것입니다 ...? – Omkant
@Omkant 'n'은 아무것도 초기화되지 않았기 때문에. 정의되지 않은 동작이 표시됩니다. 아래 답변 및 의견을 참조하십시오. – paddy
http://stackoverflow.com/a/22236689/3388865 위의 링크에서 질문에 대한 해결책을 게시했습니다. –