• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

scanf("%d %d", &i1, &i2) != 2 의 의미

21.10.31 00:17 작성 조회수 206

2

scanf("%d %d", &i1, &i2) != 2

 

이 코드가 의미하는 것이 무엇인지 모르겠습니다.

어떻게해서 그런 의미가 나오는지 이유까지 알려주시면 감사하겠습니다.

답변 1

답변을 작성해보세요.

0

안소님의 프로필

안소

2021.10.31

scanf 는 입력에 성공한 변수의 개수를 리턴합니다.

따라서 scanf("%d %d", &i1, &i2)  가 i1, i2 두 변수에 입력 받기를 모두 성공했다면 2를 리턴하게 됩니다.

둘 중 하나는 실패했거나 둘 다 입력이 안되었다면 각각 1, 0 을 리턴하게 됩니다. 

그러므로  scanf("%d %d", &i1, &i2) != 2 이 조건식은 scanf 를 통해 두 변수의 입력이 다 성공하진 못했을 때 true 가 되겠네요.