-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
bitset<>() 은 정수형 변수에만 적용되나요?
22.08.29 16:34 작성 조회수 156
0
bitset<>() 이 단순하게 메모리에 저장된 bit 를 보여주는 함수라고 생각했는데 float 형 변수 몇개를 사용해보니 전부다 00000..000000이 나와서 질문 드립니다.
답변을 작성해보세요.
0
강민철
2022.08.30
그런 것으로 보입니다.
가령 아래와 같은 코드의 경우
#include <bitset>
#include <iostream>
int main()
{
std::cout << std::bitset<32>(32.5) << std::endl;
return 0;
}
g++로 컴파일했을 때 아래와 같은 warning이 나오는 걸 볼 수 있습니다.
test.cc:6:34: warning: implicit conversion from 'double' to 'unsigned long long' changes value from 32.5 to 32 [-Wliteral-conversion]
std::cout << std::bitset<32>(32.5) << std::endl;
~~~ ^~~~
unsigned long long
형을 지원하는 모양이네요.
찾아보니 아래와 같은 유사한 질문이 있었습니다.
참고가 되실 것 같아 함께 공유드립니다.
답변 1