일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- KAKAO
- Docker
- 고등학생 대상
- Database
- git
- OSS
- suricata
- Spring
- rnn
- ICT멘토링
- LINUX MASTER
- Rocky Linux
- Kubernetes
- 인터넷의이해
- Machine Learning
- Resnet
- VSCode
- colab
- Powershell
- 코딩도장
- API
- Python
- cloud
- GoogleDrive
- 국가과제
- Github
- C언어
- 크롤링 개발
- Spring Boot
- ChatGPT
- Today
- Total
코딩두의 포트폴리오
C언어란? 본문
알고 있는 내용도 있지만, 기초부터 다지기 위해 강의에 기반한 내용을 정리할 예정
C언어란?
미국의 Bell 연구소의 Dennis M.Ritche가 UNIX 운영체제를 개발하기 위해 개발한 범용 고수준 언어이다.
(인간쪽에 가까우면 고수준, 컴퓨터에 가까우면 저수준)
C언어는 1972년 DEC PDP-11 컴퓨터에서 처음 구현되었다.
1978년 Brian Kernighan과 Dennis Ritche는 현재 K&R 표준이라고 알려진 C에 대한 최초의 모습을 공개하였다.
UNIX 운영체제 뿐만 아니라 각종 프로그래밍 언어의 컴파일러, 응용 프로그램, 하드웨어 등 다양한 분야에서 다양한 소프트웨어가 개발되고 있다.
C언의 특징
배우기 쉽다.
구조화 되어 있는 언어이다.
효율적으로 프로그램을 제작할 수 있다.
하드웨어 컨트롤, OS와의 직접 통신 등 저수준 활동을 처리할 수 있다.
다양한 컴퓨터 플랫폼에서 컴파일 할 수 있다.
왜 C 언어를 사용하는가?
C언어는 시스템 개발 작업, 특히 OS를 구성하는 프로그램 개발에 사용되어졌다.
이 때문에 하드웨어와 관련된 작업, 메모리를 직접 관리하는 작업 등 OS와 하드웨어를 직접 컨트롤 할 수 있게 설계되었다.
또 기계어인 어셈블리 언어로 작성된 코드와 거의 비슷한 속도로 실행되는 코드를 생성하기 때문에 시스템 개발 언어로 채택되었다.
(속도가 굉장히 빠름)
이러한 성능 때문에 다양한 분야에서 C 언어를 활용하여 개발이 이루어지고 있다.
다른 언어와의 비교
Java 등 오늘날 많이 사용하는 프로그래밍 언어들은 C 언어의 문법을 승계하였다.
C 언어는 개발자가 작성된 프로그램을 OS별로 결과물을 만들기 때문에 OS에 최적화된 SW를 개발할 수 있다. 하지만 OS별로 작업을 따로 해줘야 하는 불편함이 있다.
C 언어 자체에 대한 라이센스 규칙이 존재하지 않는다. 이 때문에 C 언어를 가지고 개발하는 분야마다 약간의 차이점이 존재한다.
메모리관리 등은 개발자가 직접 해야 한다.
'C' 카테고리의 다른 글
C - 개발 환경 구축 (0) | 2024.10.06 |
---|