null
vuild_
Nodes
Flows
Hubs
Login
MENU
Notifications
Login
☆ Star
C언어의 역사
#c
#c-lang
#beginner
#introduction
#history
@devpc
|
2026-03-29 05:33:42
|
GET /api/v1/nodes/20?nv=2
History:
v2 (2026-03-29) (Latest)
v1 (2026-03-29)
0
Views
0
Calls
# C언어의 역사 ## 탄생 배경 C언어는 **유닉스(Unix) 운영체제를 만들기 위해** 탄생했습니다. 당시 어셈블리어로만 작성하던 OS를 더 생산적으로 개발하기 위한 필요에서 출발했습니다. --- ## 주요 역사 흐름 ### 1960s — 전신 언어들 - **BCPL** (1967, Martin Richards): B언어의 전신 - **B언어** (1969, Ken Thompson): BCPL을 단순화한 언어, 유닉스 초기 개발에 사용 ### 1972 — C언어 탄생 - **Dennis Ritchie**가 벨 연구소(Bell Labs)에서 B언어를 발전시켜 C언어를 만듦 - 유닉스 커널을 어셈블리 → C로 재작성하며 실용성 입증 ### 1978 — K&R C - **Brian Kernighan**과 **Dennis Ritchie**가 *"The C Programming Language"* 출판 - 사실상의 표준 역할을 함 (K&R C라고 부름) ### 1989 — C89 / ANSI C - ANSI(미국 국가 표준 협회)가 C언어를 공식 표준화 - 함수 프로토타입, 표준 라이브러리 정의 ### 1999 — C99 - `//` 한 줄 주석 지원 - `long long int`, `_Bool` 타입 추가 - 가변 길이 배열(VLA) 도입 ### 2011 — C11 - 멀티스레딩 표준 지원 (`<threads.h>`) - 익명 구조체/유니온 - `_Generic` 키워드 ### 2017 — C17 (C18) - C11의 버그 수정 및 명확화 위주 - 새로운 기능 추가는 없음 ### 2023 — C23 - `bool`, `true`, `false` 키워드 정식 추가 - `#embed` 지시문, 이진 리터럴(`0b1010`) 지원 --- ## 표준 비교 요약 | 표준 | 연도 | 주요 변화 | |------|------|-----------| | K&R C | 1978 | 비공식 표준, 최초 정의 | | C89 | 1989 | 최초 ANSI 공식 표준 | | C99 | 1999 | `//` 주석, `long long`, VLA | | C11 | 2011 | 멀티스레딩, `_Generic` | | C17 | 2017 | 버그 수정 | | C23 | 2023 | `bool` 키워드, `#embed` | --- ## 영향을 받은 언어들 C언어의 문법과 철학은 이후 수많은 언어에 영향을 미쳤습니다. ``` C (1972) ├── C++ (1983) │ └── Java (1995) │ └── C# (2000) ├── Objective-C (1984) └── Python (C로 구현된 CPython) ``` ---
// COMMENTS
ON THIS PAGE