[열혈C] Chapter02. 프로그램의 기본 구성

dBoyeob·2022년 4월 8일
0

1. Hello world! 들여다보기

#include <stdio.h>
int main(void)
{
	printf("Hello world! \n");
    return 0;
}

01 C언어의 기본단위인 '함수'의 이해

C언어는 함수로 시작해서 함수로 끝난다

  • 함수 : 적절한 입력과 그에 따른 출력이 존재하는 것
  • 함수의 정의 : 만들어진 함수, 실행이 가능한 함수를 일컬음
  • 함수의 호출 : 함수의 실행을 명령하는 행위
  • 인자의 전달 : 함수의 실행을 명령할 때 전달하는 입력 값
    ➡️ 인자의 전달을 함수의 호출과정에서 동시에 일어남

02 예제 Hello.c에서의 함수는 어디에?

  • 프로그램의 흐름 = 정해진 순서에 의해 진행되는 함수의 호출
  • 모든 C언어 프로그램에서는 main 이라는 이름의 함수가 가장 먼저 호출됨
  • int main(void) : int 형의 값을 반환하고 void 형의 값을 입력받는 main이라는 이름의 함수
  • hello world 프로그램에서 중괄호 {} 는 함수의 기능을 정의하는 함수의 몸체(body)
  • 중괄호 {} 내부는 위에서 아래로 순차적으로 실행됨

03 함수 내에 존재하는 문장의 끝에는 세미콜론 문자 ; 을 붙여준다.

  • 함수에서 각 문장의 끝에는 세미콜론 문자 ; 를 사용해 문장의 끝임을 나타냄
  • 모든 문장에 붙지는 않고, 조건문이나 반복문과 같은 컨트롤 문장에는 세미콜론이 붙지 않음

04 표준 라이브러리와 printf 함수

  • Hello world 프로그램의 main 함수에 있는 printf("Hello world! \n");
    ➡️ 문자열 "Hello world! \n" 을 인자로 전달하면서 printf라는 이름의 함수를 호출하는 문장

  • 직접 printf 라는 함수를 만들지 않았지만, printf 함수는 표준 라이브러리(표준함수들의 모임)에 있는 표준함수(누구나 쓸 수 있도록 만들어진 함수)이기 때문에 호출할 수 있음

05 현 시점에 어울리는 헤더파일 선언의 필요성에 대한 설명

  • printf 와 같은 표준함수의 호출을 위해서는 함수와 관련있는 헤더파일 선언 필요
  • #include <stdio.h> 의 형태
  • 헤더파일의 선언은 소스파일의 맨 앞부분, main 함수의 정의 전에 와야함

06 return은 함수의 종료와 값의 전달(반환)이라는 두 가지 의미를 지닌다

  • return 문의 의미
    1. 함수를 호출한 영역으로 값을 전달(반환)
    2. 현재 실행중인 함수의 종료

  • main 함수에서 return은 반환값을 운영체제로 전달함
    정상적으로 종료되었을 때 0, 비정상적인 상황으로 종료될 땐 0이 아닌 값

2. 주석이 들어가야 완성된 프로그램

주석(comment) : 프로그램 내에 삽입된 메모, 컴파일의 대상에서 제외되어 실행결과에는 영향을 주지 않음

01 주석의 필요성

  • 프로그램을 분석할 때나 나중에 다시 볼 때를 위해,
    주석은 선택이 아닌 필수 !

02 블록 단위 주석

  • /* 으로 주석의 시작을, */ 로 주석이 끝났음을 명시할 수 있다.
  • 한 줄은 물론, 두 줄 이상을 주석처리 할 때 사용할 수 있다.

03 행 단위 주석

  • // 뒤에 등장하는 문장은 주석처리된다
  • 한 줄을 주석처리할 때 사용할 수 있다

04 Hello.c에 주석 추가하기

/*
제목 : Hello world 출력하기
기능 : 문자열 출력
파일이름 : HelloComment.c
수정날짜 : 2022.04.08
*/
#include <stdio.h>   // 헤더파일 선언 

int main(void)  // main 함수의 시작
{
	/*
    이 함수 내에서는 하나의 문자열을 출력한다
    문자열은 모니터로 출력된다.
    */
    printf("Hello world! \n");  // 문자열 출력
    return 0;  // 0 반환
} //  main 함수 끝

05 주석처리에 있어서의 주의점

  • 블록 단위 주석은 중첩 불가
  • 행 단위 주석은 블록 단위 주석의 내부에 포함될 수 있다

3. printf 함수의 기본적인 이해

01 printf 함수를 이용한 정수의 출력과 서식문자

  • printf 함수는 첫 번째 인자로 전달된 문자열을 출력함
  • 서식문자를 이용해 출력의 형태 지정 가능

02 출력의 형태를 다양하게 조합하는 것이 가능하다

서식문자의 삽입 위치에는 제한이 없기 때문에 다양하게 문자열을 조합해 출력할 수 있다.

profile
HGU Computer Science 21 && CRA 21-1 👨🏻‍💻

0개의 댓글