본문 바로가기
C언어

C언어 기초 1. C언어란 무엇인가?

by algosketch 2019. 7. 14.

 프로그래밍이란 무엇일까? 우리는 컴퓨터를 통해 우리의 일을 보다 쉽게 처리하고 싶다. 컴퓨터는 0과 1로만 이루어진 기계어를 사용하기 때문에 명령을 내릴 때에도 기계어를 사용해야 컴퓨터가 이해할 수 있다. 하지만 사람은 기계어를 이해하기 어렵고 컴퓨터는 사람의 언어를 이해할 수 없다. 그래서 C언어와 같은 프로그래밍 언어를 이용하여 컴퓨터에 명령을 내리는 것이다.

 우리가 알아야할 사실이 하나 더 있다. 컴파일러의 존재다. 사실 컴퓨터는 C언어를 이해하지 못 한다. 프로그래밍 언어를 기계어로 변환하는 과정을 컴파일이라고 하고 이를 수행하는 녀석을 컴파일러라고 한다. 그리고 컴파일이 완료되면 우리가 내린 명령에 대한 결과를 보여준다.

 C언어의 가장 큰 특징은 메모리를 관리할 수 있다는 점이다. 당장은 이해하지 못 해도 좋다. 다른 언어는 메모리 관리가 제한되지만 C언어를 직접적으로 메모리를 관리할 수 있다. 이것은 장점이면서 단점이 된다. 속도가 빠르다는 장점이 있고, 관리가 힘들고 에러가 발생하기 쉽다는 단점이 있다. CPU성능이 발달하면서 이러한 장점이 묻히고 있긴 하지만 CPU속도 향상에 한계가 있고 코드에 따라 같은 동작도 10배 이상의 속도차이를 보이기도 하니 여전히 매력적인 언어이다.