여기에는 방금 입력 한 정수를 인쇄하는 작은 인위적인 프로그램이 있습니다.while 루프 조건에서 사용되는 std :: cin의 동작 C++
#include <iostream>
int main(int argc, char *argv[])
{
int n;
while(std::cin>>n)
{
std::cout<<"You typed "<<n<<std::endl;
}
return 0;
}
이제 정수를 입력하면 프로그램이 정상적으로 작동합니다. 그러나 10.8과 같은 부동 소수점 숫자를 입력하면 프로그램은 부동 소수점 숫자를 정수로 캐스팅하기 때문에 화면에 10을 표시 한 다음 은을 종료합니다. 왜 이런 일이 일어나는 걸까요? 다음은 샘플 터미널 출력입니다.
Desktop: ./a.out
4
You typed 4
-9
You typed -9
10.8
You typed 10
Desktop:
코드 형식이 잘못되었습니다. 불규칙한 정렬. – Nawaz
@Nawaz : 전에 GNU 스타일 들여 쓰기를 본 적이 없습니까? – Blastfurnace