---
id: cpp-data-types
title: "C++ Data Types"
category: "Programming_Language"
status: "draft"
verification_status: "conceptual"
canonical_id: ""
aliases: ["basic data types table", "C++ 데이터 타입"]
duplicate_of: ""
source_trust_level: "B"
confidence_score: 0.86
created_at: 2026-07-04
updated_at: 2026-07-04
review_reason: ""
merge_history: []
tags: ["cpp", "programming-language", "w3schools", "data-types"]
raw_sources: ["https://www.w3schools.com/cpp/cpp_data_types.asp"]
applied_in: []
github_commit: ""
---

# [[CPP Data Types]]

## 🎯 한 줄 통찰 (One-line insight)
C++ elevates `bool` and `string` to genuine BASIC types listed right alongside `int`/`char`/`float`/`double` — a stark contrast to C, where `bool` required a separate `<stdbool.h>` include (added only in C99) and there was no `string` type at all (just `char` arrays) — meaning C++'s type system, despite near-identical syntax to C, treats booleans and text as first-class citizens from the very first data-types lesson. [S1]

## 🧠 핵심 개념 (Core concepts)
- **Six basic types** — `bool` (1 byte, true/false), `char` (1 byte, single character/ASCII), `int` (2 or 4 bytes, whole numbers), `float` (4 bytes, ~6-7 decimal digit precision), `double` (8 bytes, ~15 decimal digit precision), and `string` (text, covered separately). [S1]
- **No format specifier needed for any type** — unlike C, `cout <<` prints any of these types directly without a matching `%d`/`%f`/`%c` specifier. [S1]

## 📖 세부 내용 (Details)
- All six basic types declared together: `int myNum = 5; float myFloatNum = 5.99; double myDoubleNum = 9.98; char myLetter = 'D'; bool myBoolean = true; string myText = "Hello";`. [S1]

## ⚖️ 모순 및 업데이트 (Contradictions & updates)
- **bool과 string이 C++에서는 기본 타입급으로 취급됨**: C에서는 bool이 C99 이후 <stdbool.h>를 포함해야 했고 string은 아예 없었지만(char 배열만 존재), C++에서는 이 데이터 타입 챕터부터 bool과 string이 int/char/float/double과 나란히 기본 타입으로 소개된다는 점이 확인됨. [S1]

## 🛠️ 적용 사례 (Applied in summary)
현재 발견된 실제 적용 사례가 없습니다 — 6개 기본 타입을 한 번에 선언하는 예제가 이후 각 타입별 상세 챕터의 로드맵 역할을 한다. [S1]

## 💻 코드 패턴 (Code patterns)
The six basic C++ data types declared together, with no format specifiers needed for printing:
```cpp
int myNum = 5;               // Integer (whole number)
float myFloatNum = 5.99;     // Floating point number
double myDoubleNum = 9.98;   // Floating point number
char myLetter = 'D';         // Character
bool myBoolean = true;       // Boolean
string myText = "Hello";     // String
```

## ✅ 검증 상태 및 신뢰도
- **상태:** draft
- **검증 단계:** conceptual
- **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body)
- **신뢰 점수:** 0.86
- **중복 검사 결과:** 신규 생성 (New discovery)

## 🔗 지식 그래프 (Knowledge Graph)
- **상위/루트:** [[C++ Tutorial]]
- **관련 개념:** [[CPP Variables RealLife]], [[CPP Data Types Numeric]], [[C Data Types]]
- **참조 맥락:** 데이터 타입 섹션 첫 챕터 — 숫자형 타입(Data Types Numeric) 챕터로 이어짐.

## 📚 출처 (Sources)
- [S1] W3Schools — C++ Data Types — https://www.w3schools.com/cpp/cpp_data_types.asp

## 📝 변경 이력 (Change history)
- 2026-07-04: Initial draft synthesized from the W3Schools "C++ Data Types" page (Astra wiki-curation, P-Reinforce v3.1 format).
