-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
0 아니면 다 true라고 하셨습니다.
22.03.20 17:42 작성 조회수 422
1
왜 알파벳 하나 입력 했을때 false가 나오나요?
d나 다른 알파벳도 넣으면 false가 나옵니다.
강의 시간 - 18:45
비쥬얼 스튜디오 버젼 2019 16.7.5
답변을 작성해보세요.
2
홍정모
지식공유자2022.03.21
안녕하세요? 좋은 질문입니다.
boolean이 0이 아니면 True라는 얘기는 조건문에서 사용할 때입니다.
지금 질문하신 내용은 cin으로 입력받을 때라서 경우가 다릅니다.
다만, 저도 cin에서도 0이 아닌 값을 받으면 True가 나오도록 만들어져 있다면 더 좋았을 거라고 생각이 듭니다만 공식 문서를 보니까 입력값을 변수에 저장하는 값으로 변환하는 데에 실패하면 0이 저장된다고 정해져있네요.
- If the conversion function fails to convert the entire field, the value 0 is stored in
v
https://en.cppreference.com/w/cpp/locale/num_get/get
김철수
질문자2022.03.22
정말 섬세한 답변 감사드립니다
정리하면
boolean 일때만 0 아니면 true이고
cin은 예외 이군요
살짝 헷갈릴수도 있겠네라는 생각이 드네요
분명 저는 boolean 변수에 입력 햇는데
cin을 통해 들어갔다고 false 가 나오니까요
답변 1