Computer Science - C언어_기초

Sangho Moon·2020년 7월 15일
0

Computer Science

목록 보기
5/22
post-thumbnail
#include <stdio.h>

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

1. #inlcude <stdio.h>

이 한줄의 문장은 'stdio.h 안에 정의되어 있는 많은 함수들을 내 코드안에 포함시켜서 프로그램을 만들겠다.' 라는 의미이다.

여기서 stido는 standard input output의 약자이다.

h는 파일의 확장자, header를 나타낸다.


2. int main(void)

간단하게 '시작한다'의 의미이다. 앞으로 C언어로 작성할 코드들은 모두 int main(void) { }의 중괄호 사이에 작성하게 된다.


3. printf("hello, world");

여기서 f는 formatted의 약자이며, 서식화된 출력을 지원한다는 의미이다.


4. 실습

이 코드가 들어 있는 파일의 이름은 hello.c 이다. 터미널에서 위의 코드를 다음과 같이 실행시켜 보면, a.out이라는 파일이 목록에 생성된다.

여기서 clang hello.c 라는 명령어는 “clang” 이라는 컴파일러로 “hello.c”라는 코드를 컴파일하라는 의미이다.

즉, 내가 hello.c라는 파일 안에 작성한 코드는 source code이고, compiler를 거쳐서 생성된 a.out 파일이 컴퓨터가 이해할 수 있는 코드인 machine code가 되는 것이다.

그리고 다음과 같이 machine code를 실행시켜 보면, $ 표시가 hello, world와 같은 줄에 있음을 확인할 수 있다.

이것은 내가 작성한 source code 뒤에 단락 줄 바꿈을 의미하는 '\n'을 추가하면 해결된다.

그리고 machine code의 파일 이름을 a.out이 아닌 다른 이름으로 저장할 수도 있다.

위 터미널에 적힌 명령어들을 해석해보자면,

  • clang -o hello hello.c : hello.c 파일을 컴파일하여 hello라는 이름의 machine code로 저장하라는 뜻

  • ls : 현재 파일 목록

  • 초록색 이름에 *표시된 파일들 : 컴파일링된 파일들

  • rm a.out : a.out 파일 삭제


Ref.
Edwith_boost course
https://m.blog.naver.com/PostView.nhn?blogId=ho_11004&logNo=220114832963&proxyReferer=https:%2F%2Fwww.google.com%2F
https://asiflast.tistory.com/8

profile
Front-end developer

0개의 댓글