인프런 커뮤니티 질문&답변

solitary님의 프로필 이미지
solitary

작성한 질문수

홍정모의 따라하며 배우는 C++

3.9 비트 플래그, 비트 마스크 사용법 Bit flags, Bit masks

1바이트 메모리 활용에 대한 질문

작성

·

168

2

bool타입은 0과1 2가지의 값만 갖는데 메모리 주소의 최소단위가 바이트이므로 1바이트를 가지게 되었고 총 8비트 중 6비트는 낭비되는 메모리로 알고 있습니다.

강의에서 같은 1바이트인 unsigned char타입으로 bit flag를 활용하는 것을 봤는데 같은 크기인 bool타입에서 낭비되는 6비트로는 bit flag를 활용하지는 않는지 궁금합니다.

답변 2

1

bool 타입의 internal representation은 스탠다드에서 정의 되지 않은 것으로 알고 있습니다... 정수를 써서 나타낸다는 것과 바이트 사이즈라는  것 이외에는...  그래서 아마 bool type을 가지고 비트 연산을 하지 않는 것이 아닌가? 하는 생각을 합니다..  그에 비해서 unsinged char  같은 경우에는 어떤식으로 컴퓨터안에서 나타내는지 확실하고, 어떤 컴파일러나 플랫폼를 사용하던 차이가 없으니, 훨씬 더 포터블 할 것 같기도 하고요..

1

안녕하세요?
말씀하신 것처럼 bool은 따로 지원하지 않습니다.
그렇지만 활용하는 방법은 열려있습니다.

solitary님의 프로필 이미지
solitary

작성한 질문수

질문하기