[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
'컴퓨터 공학 공부 > C와 C++' 카테고리의 다른 글
[C++] 배열과 vector에서 최대/최소 찾는 함수 (0) | 2023.04.15 |
---|---|
[C 프로그래밍 공부] Q. main 함수 마지막에서 0 반환하는 이유 ? (0) | 2022.04.01 |
[C 프로그래밍 공부] 글을 작성하게 된 계기 (0) | 2022.04.01 |