수색…


int

"실행 환경 아키텍처에서 제안한 자연적인 크기"로 부호가있는 정수 유형을 나타내며 범위는 -32767에서 +32767까지를 포함합니다.

int x = 2;
int y = 3;
int z = x + y;

다른 정수 유형을 산출하기 위해 unsigned short , long , long long (qv)와 결합 할 수 있습니다.

불량배

값이 true 또는 false 인 정수 유형입니다.

bool is_even(int x) {
    return x%2 == 0;
}
const bool b = is_even(47); // false

「구현의 기본 문자 세트의 임의의 멤버를 격납 할 수있을만큼 큰」정수형 char 가 서명되고 있는지 (적어도 -127에서 +127의 범위를 가진다), 또는 부호 없음 (0부터 255까지의 범위를 가진다)의 구현 정의로 구현됩니다.

const char zero = '0';
const char one = zero + 1;
const char newline = '\n';
std::cout << one << newline; // prints 1 followed by a newline

char16_t

C ++ 11

따라서 uint_least16_t 와 크기 및 정렬이 동일하며 UTF-16 코드 단위를 포함 할만큼 충분히 큰 부호없는 정수 유형입니다.

const char16_t message[] = u"你好,世界\n";            // Chinese for "hello, world\n"
std::cout << sizeof(message)/sizeof(char16_t) << "\n"; // prints 7

char32_t

C ++ 11

따라서 uint_least32_t 와 크기 및 정렬이 동일하고 UTF-32 코드 단위를 포함 할만큼 충분히 큰 부호없는 정수 유형입니다.

const char32_t full_house[] = U"🂣🂳🂨🂸🃈";               // non-BMP characters
std::cout << sizeof(full_house)/sizeof(char32_t) << "\n"; // prints 6

흙손

부동 소수점 유형. C ++에서 세 가지 부동 소수점 유형 중에서 가장 좁은 범위를가집니다.

float area(float radius) {
    const float pi = 3.14159f;
    return pi*radius*radius;
}

더블

부동 소수점 유형. 그 범위는 float 의 범위를 포함합니다. long 과 결합되면 long double 부동 소수점 유형을 나타내며 범위에는 double 포함됩니다.

double area(double radius) {
    const double pi = 3.141592653589793;
    return pi*radius*radius;
}

적어도 int 와 길이가 같고 범위에 적어도 -2147483647 ~ +2147483647을 포함하는 부호가있는 정수 유형을 나타냅니다 (즉, - (2 ^ 31-1) ~ + (2 ^ 31-1)). 이 유형은 long int 로도 쓰여질 수 있습니다.

const long approx_seconds_per_year = 60L*60L*24L*365L;

조합 long double 은 부동 소수점 유형을 나타내며 세 가지 부동 소수점 유형 중 가장 넓은 범위를가집니다.

long double area(long double radius) {
    const long double pi = 3.1415926535897932385L;
    return pi*radius*radius;
}
C ++ 11

long 지정자 회 발생과 long long , 적어도만큼 인 서명 정수형이고 long 및 그 범위 9백22경3천3백72조3백68억5천4백77만5천8백7 적어도 -9223372036854775807를 포함한다 (즉, 포함 - (2 ^ 63 - 1) ~ + (2 ^ 63 - 1)).

// support files up to 2 TiB
const long long max_file_size = 2LL << 40;

짧은

적어도 char 만큼 길고 범위에 -32767 이상 +32767 이상을 포함하는 부호있는 정수 유형을 나타냅니다. 이 유형은 short int 로도 쓰여질 수 있습니다.

// (during the last year)
short hours_worked(short days_worked) {
    return 8*days_worked;
}

불완전한 유형; 객체 타입 가질 수 없습니다 void , 나 거기가 배열되어 void 또는에 대한 참조 void . 아무것도 반환하지 않는 함수의 반환 유형으로 사용됩니다.

게다가 함수는 void 형의 단일 매개 변수로 중복 선언 될 수 있습니다. 이것은 매개 변수없이 함수를 선언하는 것과 같습니다 (예 : int main()int main(void) 가 동일한 함수를 선언 함). 이 구문은 C와의 호환성을 위해 허용됩니다 (함수 선언은 C ++과 다른 의미가 있습니다).

void* ( " void to pointer") 유형은 객체 포인터를 그 포인터로 변환 할 수 있고 동일한 포인터를 반환 할 수 있다는 속성이 있습니다. 이 기능은 특정 유형의 (유형이 안전하지 않은) 유형 지우기 인터페이스, 예를 들어 C 스타일 API ( qsort , pthread_create )의 일반 컨텍스트에 적합한 void* 유형을 만듭니다.

모든 표현식은 void 유형의 표현식으로 변환 될 수 있습니다. 이를 버려진 값 식이 라고합니다.

static_cast<void>(std::printf("Hello, %s!\n", name));  // discard return value

이는 표현식의 값이 중요하지 않으며 표현식이 부작용에 대해서만 평가된다는 것을 명시 적으로 신호로 보내는 데 유용 할 수 있습니다.

wchar_t

와이드 문자 세트라고도하는 지원되는 최대 확장 문자 세트의 모든 문자를 나타낼만큼 충분히 큰 정수 유형입니다. wchar_t 가 UTF-16과 같은 특정 인코딩을 사용한다고 가정하기 위해 이식 할 수 없습니다.

ASCII 문자 255보다 큰 문자를 저장해야 할 때 일반적으로 사용됩니다. 문자 유형 char 보다 큰 크기입니다.

const wchar_t message_ahmaric[] = L"ሰላም ልዑል\n"; //Ahmaric for "hello, world\n"
const wchar_t message_chinese[] = L"你好,世界\n";// Chinese for "hello, world\n"
const wchar_t message_hebrew[]  = L"שלום עולם\n"; //Hebrew for "hello, world\n"
const wchar_t message_russian[] = L"Привет мир\n";  //Russian for "hello, world\n"
const wchar_t message_tamil[]   = L"ஹலோ உலகம்\n"; //Tamil for "hello, world\n"


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow