소개
안녕하세요 아임코딩입니다.
이번에는 C언어가 무엇인지 알아보는 시간을 갖도록 하겠습니다.
C언어의 역사
C언어는 1972년 벨 연구소에서 일하던 켄 톰슨( Kenneth Lane Thompson ) 과 데니스 리치 ( Dennis MacAlistair Ritchie ) 가 만든 프로그래밍 언어입니다.
새로 개발된 유닉스 운영 체제에 맞게 사용하기 위해서 C언어를 개발했습니다.
이름이 C언어인 이유는 켄 톰슨이 BCPL 이라는 언어에 맞춰 개조한 "B" 언어 (벨 연구소의 B) 라고 이름을 지었고,
데니스 리치가 B언어를 개선해서 현재 우리가 사용하고 있는 C언어의 초기 모델이 개발됩니다.
유닉스 시스템의 바탕 프로그램은 모두 C언어로 작성되었고, 많은 운영체제의 커널 또한 C언어로 만들어졌습니다.
더 자세한 내용은 위키백과를 참고하시기 바랍니다.
https://ko.wikipedia.org/wiki/C_(%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D_%EC%96%B8%EC%96%B4)
C언어를 배우는 이유
C언어를 배우는 이유는 아주 많지만 핵심적인 이유에 대해서 설명드리겠습니다.C언어는 우리가 사용하는 컴퓨터의 시스템을 만들 때 주로 사용하는 언어입니다.
프로그램을 만들 때 C언어가 사용된 대표적인 예시는 다음과 같습니다.
MS 사의 윈도우
마이크로소프트가 개발한 컴퓨터 운영체제인 윈도우는 C언어와 C++를 기반으로 제작되었습니다.
현재 수많은 사람들이 윈도우 운영체제를 이용하여 컴퓨터를 활용합니다.
애플의 Mac OS
애플의 Mac OS는 C++, C언어, 스위프트, 오브젝티드-C, 어셈블리어를 이용하여 제작되었습니다.
OS의 계열은 유닉스 계열입니다.
유닉스
유닉스는 C언어를 개발한 벨 연구소에서 켄 톰슨과 데니스 리치가 C언어를 이용하여 만든 운영 체제입니다.
유닉스를 개발할 때에는 C언어와 어셈블리어를 이용하여 만들었습니다.
리눅스
리눅스 운영체제는 C언어와 어셈블리어로 개발이 되어 현재까지도 사랑받는 운영체제로 자리매김을 하고있습니다.
MySQL 데이터베이스
MySQL 데이터베이스는 C언어와 C++ 을 이용하여 만들었습니다.
세계에서 가장 많이 쓰이는 오픈소스의 관계형 데이터베이스로 MySQL은 쓰이고 있습니다.
등등
수많은 시스템과 프로그램이 C언어를 이용하여 개발되었습니다.
현재 컴퓨터를 이루고 구성하는 시스템 중 수많은 부분이 C언어로 제작이 되었습니다.
C언어를 배우고 직접 C언어를 이용하여 프로그램을 만들다보면 컴퓨터에 대해서 조금은 더 이해할 수 있게 될 것입니다.
C언어의 인기
TIOBE 라는 회사에서는 매월 프로그래밍 언어의 인기 순위를 발표합니다.
2024년 1월 기준으로 C언어는 2위, C++은 3위, C#은 5위에 있는 것을 확인할 수 있습니다.
현재 전 세계에 있는 모든 프로그래밍 언어 중 5위 안에 3가지 언어가 C언어 기반의 언어인 것을 확인할 수 있습니다.
이처럼 C언어는 전세계에서 가장 인기있는 프로그래밍 언어 중 하나입니다.
C언어를 배우면서 컴퓨터에 대한 이해와 프로그래밍을 하는 능력이 늘어날 것입니다.
정리
C언어는 1972년 벨 연구소에서 일하던 켄 톰슨( Kenneth Lane Thompson ) 과 데니스 리치 ( Dennis MacAlistair Ritchie ) 가 만든 프로그래밍 언어입니다.
C언어를 이용하여 수많은 시스템과 프로그램이 개발되었습니다.
C언어는 현재에도 전세계에서 가장 인기 있는 프로그래밍 언어 중 하나입니다.
유튜브 링크
https://www.youtube.com/watch?v=mwifE4oZuQ8
'프로그래밍 > C' 카테고리의 다른 글
[C언어] printf() 콘솔 화면 출력 (2) | 2024.01.23 |
---|---|
[C언어] visual studio 설치 C언어 개발 환경 구축 (2) | 2024.01.17 |
[C언어] 아스키 코드(ASCII) 와 문자형 (0) | 2024.01.10 |
[C언어] 특정 형식 입력(숫자/숫자/숫자) (0) | 2023.04.30 |
[C언어] scanf() this function or variable may be unsafe. 오류 해결 (0) | 2023.04.30 |