unsigned 키워드는 기본적으로 C ++의 특정 데이터 유형으로 지정됩니까? 프로토 타입의 클래스에 대한 함수를 작성하려고합니다.
unsigned Rotate(unsigned object, int count)
그러나 나는 정말로 무슨 unsigned
의미 인지 이해하지 못한다 . 그런거 아니야 unsigned int
?
답변:
정수 유형 :
short -> signed short
signed short
unsigned short
int -> signed int
signed int
unsigned int
signed -> signed int
unsigned -> unsigned int
long -> signed long
signed long
unsigned long
char주의 :
char (is signed or unsigned depending on the implmentation)
signed char
unsigned char
unsigned 키워드가 C ++의 데이터 유형으로 기본 설정됩니까?
예, 서명 됨 및 서명되지 않음을 독립형 유형 지정자로 사용할 수도 있습니다.
정수 데이터 유형 char, short, long 및 int는 표시해야하는 숫자 범위에 따라 부호가 있거나 부호가 없을 수 있습니다. 부호있는 유형은 양수 값과 음수 값을 모두 나타낼 수 있지만 부호없는 유형은 양수 값 (및 0) 만 나타낼 수 있습니다.
n 비트를 포함하는 부호없는 정수는 0에서 2 n -1 사이의 값을 가질 수 있습니다 ( 2n 개의 다른 값).
그러나 signed 및 unsigned는 독립형 유형 지정 자로도 사용할 수 있으며 이는 각각 signed int 및 unsigned int와 동일 함을 의미합니다. 다음 두 선언은 동일합니다.
unsigned NextYear;
unsigned int NextYear;
short
및 long
또한 유형 수정 자 입니다. 글을 쓰면 short s
실제로 의미하는 short int s
것처럼 unsigned u
실제로 의미 unsigned int u
합니다. (및 unsigned short
의미 unsigned short int
)
C ++ Reference에서 unsigned 키워드에 대해 읽을 수 있습니다 .
이 문제에는 서명 된 것과 서명되지 않은 두 가지 유형이 있습니다. 정수의 기본값은 부호가 있으며 이는 음수 값을 가질 수 있음을 의미합니다.
32 비트 시스템에서 정수는 32 비트이며, 이는 ~ 40 억의 값을 포함 할 수 있음을 의미합니다.
그리고 그것이 서명되었을 때, 이것은 당신이 그것을 분할해야 함을 의미합니다.
그러나 부호가없는 경우 값 은 음수를 포함 할 수 없으므로 정수의 경우 0 ~ + 40 억을 의미합니다.
Wikipedia 에 대한 정보가 조금 더 있습니다.