Introduction to Programming 2 — 9/1 (교정본·국문) 일시: 2025.09.01(월) 오후 3:06 — 56분 11초 강의자: 김유빈
[안내] 본 문서는 영어 강의 전사본을 한국어로 자연스럽게 풀어 쓰고, 비문·오역·중복을 교정한 정리본입니다(의미 왜곡 없음).
──────────────────────────────── Ⅰ. 문자 집합과 ‘확장 문자’의 필요성 ──────────────────────────────── • 8비트(256개)만으로는 한글 등 다국어 문자를 모두 표현하기에 부족합니다. → 그래서 ‘확장 문자 집합(extended character set)’—사실상 유니코드(UTF-8 등)—를 사용합니다. • 핵심: 소스 코드의 문자 인코딩과 실행 환경의 인코딩을 일치시키는 것이 중요합니다. (예: UTF-8 권장)
──────────────────────────────── Ⅱ. C/C++ 자료형과 표준이 보장하는 ‘최소 크기’ ──────────────────────────────── • 표준은 ‘정확한 바이트 수’가 아니라 ‘최소 크기’와 ‘상대적 순서’를 보장합니다.
──────────────────────────────── Ⅲ. 부호(signed)와 무부호(unsigned) ──────────────────────────────── • 정수형은 ‘부호가 있는 형(signed)’과 ‘부호가 없는 형(unsigned)’으로 나뉩니다.
──────────────────────────────── Ⅳ. 불(bool)과 참/거짓 판정 ──────────────────────────────── • C/C++에서 불리언은 ‘0이면 false, 0이 아니면 true’입니다.
──────────────────────────────── Ⅴ. 실수형(부동소수점)과 정밀도 ──────────────────────────────── • float, double 등은 IEEE 754에 따라 유효 자릿수와 범위가 다릅니다. • 반올림/정밀도 이슈가 있으므로, 비교 시 ‘허용 오차(ε)’를 두세요.
──────────────────────────────── Ⅵ. 메모리: 비트·바이트·주소·정렬 ──────────────────────────────── • 컴퓨터는 데이터를 ‘비트’(0/1) 열로 저장하며, 1바이트=8비트가 기본 최소 단위입니다. • 모든 메모리 위치에는 ‘고유 주소’가 있으며, 포인터는 이 주소를 값으로 가집니다. • 정렬(alignment)과 패딩(padding):