[C 프로그래밍 공부] 1. C언어의 기본 (장점 및 구조)

2022. 4. 1. 14:56

C언어의 장점

 

1. 절차 지향적이다.

* 절차치향적 : 정해진 순서의 실행 흐름을 중시한다.

  • 코드가 복잡하지 않아 상대적으로 유지 보수가 쉽다.
  • 사람이 사고하는 방식과 비슷하게 정해진 순서가 있다. 따라서 C언어를 처음 접하는 사람도 쉽게 익숙해질 수 있다.

 

2. 이식성이 좋다.

  • C언어로 작성된 프로그램은 CPU의 종류에 상관없이 실행이 가능하다.
  • 운영체제의 차이에도 덜 민감하다.

 

3. 구현된 프로그램이 좋은 성능을 보인다.

  • 사용하는 메모리의 양이 상대적으로 적다.
  • 속도를 저하시키는 언어를 최소화한 언어이다.

따라서 성능에 민감한 SW 개발에 주로 사용된다. 하지만 프로그램은 어떻게 만드냐에 따라 성능이 달라질 수 있으므로 이 장접은 절대적인 것은 아니다.

 

 

4. 저급 언어의 특성을 가지고 있다.

  • 어셈블리어 수준으로 하드웨어를 제어하는 일이 가능하다.

 


 

C언어의 구조

 

1. 한개 이상의 함수

  • C 프로그램은 한개 이상의 함수로 이루어져 있다. 이 함수를 중복해서 사용하기도 하는데 이를 서브루틴(subroutine)이라고 한다.
  • subroutine : 프로그램에서 2회 이상 중복 사용되는 부분이 있을 대 그 부분을 별도로 필요할 때마다 호출하여 사용함으로써 프로그램의 스텝 수를 절약하는 처리. (출처 : https://www.scienceall.com/%EC%84%9C%EB%B8%8C%EB%A3%A8%ED%8B%B4-subroutine/)

2. 전처리기 지시문 (Preprocessor directives)

  • '#' 으로 구별된다.
  • ex) #include <stdio.h> : 표준 라이브러리로 표준 함수에 대한 정보를 제공한다.
  • ex) #define x 1 : 앞으로 x는 1대신 쓰인다. x를 1로 치환한다.

3. 선언 (Declaration)

  • 자료형이나 다른 변수/함수 등을 선언한다.
  • ex) int i;

4. 본문 (Statement)

  • ';'로 끝난다.
  • ex) i = 10;
  • ex) return 0;

* return 0;함수를 호출한 영역으로 값 전달(반환)현재 실행중인 함수 종료.

 

Q. main 함수 마지막에서 0전달(반환)하는 이유 ?

-> main 함수에서 0을 반환을 했을 때, 0은 운영체제에게 전달된다. 이는 프로그램의 종료 상태를 알리는 용도로 사용되며, 정상적인 종료의 상황에선 '0'전달, 비정상적 종료는 '0' 이외의 값을 전달한다.

https://doplinblue.tistory.com/21

 

BELATED ARTICLES

more