int main() {
int x = 3613;
std::cout << "x= " << x << std::endl;
std::string xBin = std::bitset<16>(x).to_string();
std::cout << xBin << std::endl;
unsigned long xDecimal = std::bitset<16>(xBin).to_ulong();
std::cout << xDecimal << std::endl;
std::cout << std::endl << std::endl;
int b01 = 0b11001;
std::cout << "b01= " << b01 << std::endl;
int b02 = 0b1010;
std::cout << "b02= " << b02 << std::endl;
int b03 = b01 + b02;
std::cout << "int b03 = b01 + b02 = " << b03 << std::endl;
return 0;
}
출력 : STD로 얻어진 문자열 :: 비트 세트 <>이 불가능하면서이 정상 연산을 할 수있는 바이너리 리터럴C++ 11/C++ 14의 10 진수 변환을 통해 바이너리 리터럴을 작성하고 작성하는 방법은 무엇입니까?
x= 3613
0000111000011101
3613
b01= 25
b02= 10
int b03 = b01 + b02 = 35
. 그래서 ... 질문은 : 바이너리 리터럴을 "작성"하는 방법입니다. 예를 들어, std :: bitset <을 사용하여 얻은 10 진수에서 2 진수로의 변환을 통해? 친절한 도움을 기다리고 있습니다. 마르코
는 "구성"무엇을 의미합니까? 'std :: bitset'과 문자열 출력과 같은 일을하지만 다른 함수를 사용한다는 것을 의미합니까? 'std :: bitset'을 사용하면 무엇이 문제가됩니까? – wally
'to_ulong'의 문제점은 무엇입니까? – user2357112
일반 연산에 비트 셋 연산을 사용하기 위해 std :: bitset에 대해 더 배워야한다고 생각합니다. – user2315094