본문 바로가기

Programming/C

C 언어 | C 기초

✔ 학습목표

C로 "hello, world"를 출력하는 프로그램을 만들 수 있다.

 

 

C 언어

C는 아주 오래되고 전통적인 순수 텍스트 기반의 프로그래밍 언어다. C로 작성한 코드는 '파일이름.c'로 저장한다. 아래는 hello.c라는 이름으로 생성한 예제 프로그램이다.

 

#include <stdio.h>

int main(void)
{
    printf("hello, world\n");
}

 

 

1)  int main(void)는 시작한다는 의미를 가진다.

2) printf("hello, world\n")은 말하는 역할을 한다. 글자나 단어, 문장을 적을 때에는 언제나 텍스트를 ""쌍따옴표로 감싼다. 그리고 문장의 끝에 마침표를 붙이는 것과 같이 C에서는 세미콜론(;)을 붙여 마무리한다.

3) #include <stdio.h>는 'stdio.h'라는 이름의 파일을 찾아서 printf 함수에 접근할 수 있도록 한다. 

 

컴파일러

CS50 강의자료

 앞선 예시처럼 우리가 직접 작성한 코드는 '소스코드(source code)'라고 불린다. 하지만 컴퓨터는 2진수로 작성된 '머신 코드(machine)'만을 이해한다. 컴파일러는 소스 코드를 머신 코드로 변환하는 프로그램이다.

 

예제에서는 'clang'이라는 컴파일러를 사용한다. 터미널창의 명령어 프롬프트 '$' 기호 옆에 'clang hello.c'라는 명령어를 입력하는 것은 이 컴파일러로 'hello.c'라는 코드를 컴파일하라는 의미다.

 

컴파일을 하면 a.out이라는 파일이 생성된다. 프롬프트에 ./a.out이라는 명령어를 입력하면 프로그램이 실행되는 것을 확인할 수 있다(./a.out의 '.'은 지금 있는 현재 폴더를 나타낸다).

 

 

* c를 비롯한 언어들은 "시키는 일"만 한다. 예를 들어 줄바꿈의 경우에도 일일이 '\n'을 사용해야 한다.

* ls 명령어 = list 확인

* rm 명령어 = remove 기능 

 

 

 


 

이 글은 네이버 부스트 코스 David J. Malan(데이비드 J. 말란) 교수님의 모두를 위한 컴퓨터 과학(CS50 2019) 강의를 수강하고 작성한 글입니다. 본 강좌 내 실습에서는 CS50 Sandbox를 사용합니다.

 

 

모두를 위한 컴퓨터 과학 (CS50 2019)

부스트코스 무료 강의

www.boostcourse.org

'Programming > C' 카테고리의 다른 글

C 언어 | 배열  (0) 2021.02.02
C 언어 | 사용자 정의 함수와 중첩 루프  (0) 2021.01.31
C 언어 | 자료형, 형식 지정자, 연산자  (0) 2021.01.30
C 언어 | 조건문과 루프  (0) 2021.01.30
C 언어 | 문자열  (0) 2021.01.30