- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Link
- 재능이의 돈버는 일기
- StresslessLife
- K_JIN2SM
- 소소한 일상
- My Life Style & Memory a Box
- Blog's generation
- 공감 스토리
- 취객의 프로그래밍 연구실
- Love Me
- Dream Archive
- 세상에 발자취를 남기다 by kongmingu
- hanglesoul
- 카마의 IT 초행길
- 느리게.
- 미친듯이 즐겨보자..
- Joo studio
- Gonna be insane
- 악 다 날아갔어!! 갇대밋! 왓더...
- xopowo05
- 맑은공기희망운동
- 엔지니어 독립운동
- 혁준 블로그
- Simple in Complex with Simple
- 무의식이 의식을 지배한다
드럼치는 프로그래머
[C/C++] C언어 이야기 본문
초기 C 언어의 개발은 1969년 부터 1973년 사이 AT&T 벨 연구소에서 이루어졌다. 보통 C 언어가 컴퓨터의 앞글자 'C' 를 따서 지었다고 생각하겠지만 실제로는 C 언어의 개발자 켄 톰슨 ( Ken Thompson) 에 따르면, C 언어가 원래 B 언어라는 또 다른 컴퓨터 언어의 발전된 버전이였기에 C 언어라 지었던 것이다.
초기의 PDP - 11 버전의 유닉스 시스템은 어셈블리 언어로 개발되었다. 1973년에 구조체 기능이 추가된 C 언어는 굉장히 강력한 언어가 되어서 어셈블리로 쓰여졌던 유닉스 운영체제의 커널을 C 언어로 다시쓰게 되었다. 이는 어셈블리 언어가 아닌 다른 언어로 쓰여진 최초의 언어 중 하나가 되었다. ( 그 외에도 어셈블리 언어로 쓰여지지 않는 운영체제의 커널은 멀틱스(Multics) 시스템의 PL/I 언어와, Burroughs B5000 는 ALGOL 이다. )
1978년에 브라이언 커닝핸(Brian Kernighan) 과 데니스 리치(Dennis Ritchie) 는 'The C Programming Language ( C 프로그래밍 언어) ' 라는 책의 첫 출판을 하였다. 이 책은 흔히 프로그래머들 사이에서 "K&R" 이라고 불리어 졌으며 이 때문에 책에서 나온 C 언어는 흔히 "K&R C" 라고 불리어졌다. 두번째 에디션의 'The C Programming Language' 는 책 표지에 ANSI C 마크가 부착되어있다.
K&R 에 나와있는 몇 가지 언어의 중요한 기능들을 살펴보자면 :
- 표준 입출력 (I/O) 라이브러리
- long int 데이터 형식
- unsigned int 데이터 형식
- 복합 할당 연산자 (compound assignment operators) =op 는 i=-10 과 같이 애매모호한 의미를 띄는 것을 막기 위해 op= 로 바뀌었다. 왜냐하면 i=-10 은 원래 i =- 10 으로 번역되었으나 실제로 프로그래머가 의미하는 것은 i = -10 일 수 도 있기 때문이다.
1970 ~ 1980 년 동안 여러 버전의 C 는 수 많은 메인프레임 컴퓨터, 미니 컴퓨터, IBM PC 를 포함한 마이크로 컴퓨터 등에 이식되면서 이에 대한 인기가 치솟았다. 1983년에는 미국 표준 협회 (American National Standards Institute , ANSI ) 는 위원회를 조직해서 X3J11 를 C 의 표준으로 결정하였다. 1989 년에는 표준이 ANSI X3 으로 승인되었다. 이 때 이 버전의 C 언어를 ANSI C 또는 표준 C 라 부르며 가끔씩 C89 라 부르기도 한다.
1990 년에 ANSI C 표준은 국제 표준화 기구 (International Organization for Standardization, ISO ) 에 의해 흔히 C90 이라 불리던 ISO/IEC 9899:1990 으로 받아들여 졌다. 그 후로 C 표준화 작업이 계속되었다.
C 표준화 작업의 한 목표는 K&R C 의 비공식적인 기능들을 포함하는 C 를 마드는 것이다. 표준화 위원회는 이전에 포함되지 않았던 함수 프로토 타입 (function prototypes) , void 포인터, 국제 문자표에 대한 지원과 전처리기 등에 대한 사항을 추가시켰다
C89 는 현재의 여러 C 컴파일러에서도 지원이 되었고 이는 현재의 대부분의 C 코드가 이 언어를 바탕으로 쓰여졌다. 표준 C 로 쓰여진 소프트웨어와 적당한 하드웨어만 있으면 현재의 어떤 플랫폼 에서도 상당히 잘 작동할 수 있다.
참고자료 : http://en.wikipedia.org/wiki/C_(programming_language)
[출처] http://kevin0960.tistory.com/136
'★─Programing > ☆─C | C++' 카테고리의 다른 글
[C/C++] ZeroMemory() , memset() 차이 (1) | 2009.01.29 |
---|---|
[C/C++] <stdlib.h>의 system() 함수, 명령 프롬프트 (1) (0) | 2009.01.23 |
[C/C++] C언어의 특징 (0) | 2009.01.13 |
[C/C++] C 코드 최적화하기 v0.1 (1) | 2009.01.13 |
[C/C++] 반복문으로 별삼각형 그리기 (0) | 2009.01.13 |
Comments