#include<stdio.h>
#include<stdbool.h>
#define _CRT_SECURE_NO_WARNINGS
int main()
{
int num2 = 0;
bool exitOuterLoop = false;
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
if (num2 == 20)
{
exitOuterLoop = true;
break;
}
num2++;
}
if (exitOuterLoop == true)
break;
}
printf("%d\n", num2);
int gender;
int age;
bool isOwner;
scanf("%d %d %d", &gender, &age, &isOwner);
//성별 : 남자 1, 여자 2, 나이, 주택 소유 여부 : 자가 1
//전월세 : 0
printf("안녕하세요.\n");
printf("문을 연다.\n");
if (gender == 2)
goto EXIT;
if (age < 30)
goto EXIT;
if (isOwner == false)
goto EXIT;
EXIT:
printf("안녕히계세요.\n");
printf("문을 닫는다.\n");
return 0;
}
이와같은 소스코드를 실행했을 때 사진처럼 실행 시에 오류가 뜹니다. 왜 이런 오류가 뜨는 건가요?....
bool 타입을 위한 scanf 서식 지정자가 따로 없습니다.
대신 %d를 썼을 때 나타나는 오류입니다.
더 나은 방법은 int로 입력 받고 bool로 변환하는 것입니다.
int temp = 0;
bool b = false;
scanf("%d", &temp);
b = temp;