728x90
"a"와 'a'는 C/C++에서 완전히 다른 의미를 갖습니다. 비유를 통해 쉽게 풀어볼게요.
🎭 비유: 편지와 글자
📌 'a'는 한 글자
- 마치 편지 봉투에 적힌 단 하나의 글자라고 생각하세요.
- 예: 'a'는 문자 하나이며, 내부적으로 아스키 코드 97로 저장됩니다.
📌 "a"는 편지 한 통
- "a"는 문자열입니다. 즉, 'a'라는 글자와 끝을 나타내는 '\0'이 함께 들어 있는 문자 배열이에요.
- 마치 편지지에 'a'라고 적고, 마지막에 '끝!'이라고 써놓은 것과 같죠.
🧠 기술적으로 보면
표현의미메모리 구조크기
'a' | 문자 리터럴 | 단일 문자 (예: 97) | 1 byte |
"a" | 문자열 리터럴 | 'a' + '\0' | 2 bytes |
📦 또 다른 비유: 택배 상자
- 'a'는 작은 상자에 담긴 하나의 물건 (예: 알파벳 하나)
- "a"는 큰 상자에 담긴 여러 물건 (예: 알파벳 하나 + 끝 표시)
💡 사용 예시
char ch = 'a'; // 문자 하나 저장
char str[] = "a"; // 문자열 저장 (실제로는 ['a', '\0'])
이제 'a'와 "a"의 차이가 훨씬 명확해졌죠?
728x90
'1학년 대학 수업 > C++ 프로그래밍' 카테고리의 다른 글
C/C++ 식별자, 상수, 자료형, 변수, 전처리기, 연산자 예제 (0) | 2025.09.11 |
---|---|
C/C++의 자료형 순위 (0) | 2025.09.11 |
null과 0의 차이 (0) | 2025.09.11 |
이스케이프 시퀀스를 사용하는 프로그래밍 언어 (0) | 2025.09.11 |
C/C++ 리터럴의 대해 (0) | 2025.09.11 |