정수 모든 양수, 음수 또는 0이 아닌 분수 값을 포함하는 숫자를 정의하는 데 사용되는 데이터 유형입니다. 소수점을 사용할 수 없습니다.
플로트 분수 값이 있는 숫자를 정의하는 데 사용되는 데이터 유형입니다. 소수도 포함될 수 있습니다.
이제 컴파일러가 두 값에 동일한 값을 입력할 때 float 및 integer 반환 값이 무엇인지 확인합니다.
예시
#include <iostream> using namespace std; int main(){ float f = 23; unsigned int x = 23; cout<<"Float f = "<<f<<endl; cout<<"Integer x = "<<x<<endl; f = 0xffffffff; x = 0xffffffff; cout << "f = " << f << endl; cout << "x = " << x << endl; return 0; }
출력
Float f = 23 Integer x = 23 f = 4.29497e+09 x = 4294967295
여기 이 코드에서 정수 값을 float에 전달하면 정수로 작동하고 정수 값을 출력으로 반환한다는 것을 알 수 있습니다. 하지만 둘 다 최대값이 달라집니다.
이제 float 값으로 정수 변수를 초기화하면 어떻게 되는지 봅시다.
예시
#include <iostream> using namespace std; int main(){ float f = 23.768; unsigned int x = 23.768; cout<<"Float f = "<<f<<endl; cout<<"Integer x = "<<x<<endl; return 0; }
출력
Float f = 23.768 Integer x = 23
이 조건에서도 프로그램이 컴파일되고 실행됩니다. 정수 변수는 초기화 float 값의 소수점 값을 버리고 정수 값으로 초기화됩니다.
이제 이 값을 비교해 보겠습니다 -
예시
#include <iostream> using namespace std; int main(){ float f = 0xffffffff; unsigned int x = 0xffffffff; if(f == x ){ cout<<"TRUE"; } else cout<<"FALSE"; return 0; }
출력
TRUE