Dev C++ 컴파일러를 사용하여 포인터의 멋진 사용법을 이해하고 있는데, 이것은 내가 실제로 알고 싶어하는 것으로 관찰되었습니다.C++에서 double 변수의 큰 값을 반올림하는 이유는 무엇입니까?
위 그림에서 d 값을 52.xxx로 사용할 때 그리고이 값의 라운드하지 않는 그 부동 소수점 표현에서와 같이 값을 출력 인쇄 기능에 전달, 이제 다음 도면을보고 -
가#include<iostream>
using namespace std;
int main(){
double d = 52.664;
cout << d << endl
}
코드의 출력 52.664
인(d = 56455.66456) 다음 값에서 반올림합니다. 이유는 무엇입니까? 누군가 C++ 컴파일러가 여기에서하는 것처럼 보이는 것에 대한 행동을 설명 할 수 있습니까?
대신 이미지를 제거하고 대신 코드 및 텍스트 출력으로 바꿀 수 있습니까? –
초기화 후'std :: basic_ios'의 기본 설정 ('init()')은 6 자리의 유효 자릿수와 고정 된 부동 소수점 형식의 정밀도입니다 (C++ 11 § 27.5.5.2 참고). – WhozCraig
'8d'와 같이 '8'은 무엇입니까? 컴파일러 오류가 아닌가요? –