- CS50 Sandbox를 이용한 hello.c (C기초)2022년 02월 04일
- 슬용이
- 작성자
- 2022.02.04.:37
CS50 Sandbox
CS50 Sandbox
Temporary programming environments for students and teachers.
sandbox.cs50.io
폴더 아이콘 옆의 +버튼을 눌러서 파일을 생성해주자
int main(void) { }
의 뜻은 시작한다의 의미를 가지고 있다.
앞으로 작성할 코드는 모두 이 코드 안에 쓰게 될 것이다.
printf("hello,world");
C언어에서 printf는 say와 동일하다. 출력하고 싶은 것이 있을 때 사용한다.
코드의 끝에는 항상 ; 을 적어줘야 하며, 글자나 단어, 문장을 적을 때는 항상 ""으로 감싸줘야 한다.
컴파일러 Compiler
이렇게 작성한 코드는 소스코드라 불리며, 컴퓨터가 이해하기 위해서는 머신코드로 변환해야 한다.
이렇게 변환을 해 주는 프로그램을 컴파일러라고 부른다.
>_ Terminal
작성한 코드는 하단의 터미널Terminal에 명령어를 작성함으로써 실행시켜 볼 수 있다.
우리가 입력한 코드는 소스코드이기에 이것을 머신코드로 변경을 해야한다.
$ clang hello.c
$는 ~를 진행하겠습니다의 뜻을 가지고 있으며, 위 코드를 터미널에 입력하게 되면 a.out 이라는 머신코드가 생성된다.
$ clang hello.c $ ./a.out hello,world$
./a.out은 a.out 코드를 실행한다는 뜻이고 Enter를 누르면 hello,world$가 나타난다.
$가 hello,world 뒤에 나타난 것은 줄바꿈을 해주지 않아서 나타난 문제이다.
줄바꿈은 \n 을 입력하면 된다.
#include <stdio.h> int main(void) { printf("hello,world\n"); }
$ ./a.out hello,world$
위 처럼 printf문 뒤에 \n을 입력하고 다시 a.out 파일을 실행시키면 변하는 것이 없다.
새로 컴파일을 하지 않았기 때문이다.
$ clang hello.c $ ./a.out hello,world
처음부터 다시 hello.c 파일을 머신코드로 변환하고 실행시켜주자.
잠깐, 그럼 머신코드인 a.out의 파일명은 변경할 수 없는걸까? 당연히 변경할 수 있다.
$ clang -o hello hello.c $ ./hello hello,world
컴파일을 할 때 -o "생성할 머신코드 파일명" "컴파일 할 소스코드 파일명" 을 적어주자
hello로 머신코드를 생성했고, 정상적으로 작동하는 것을 확인할 수 있다.
$ ls a.out* hello* hello.c $ rm a.out rm: remove regular file 'a.out'? y $ ls hello* hello.c $
존재하는 파일들은 ls 를 통해 확인할 수 있는데 파일명 뒤에 * 표시가 붙은 것은 머신코드이다.
삭제는 rm 명령어를 통해 진행할 수 있다.
'그 외' 카테고리의 다른 글
[Git] 폴더 이름 소문자 변경하기 (0) 2022.05.29 NPM Capital letters 설치 오류 (0) 2022.05.16 VS Code HTML 자동완성 템플릿 사용하기 (0) 2022.01.11 JS Code Extension 플러그인 추천 (0) 2022.01.08 Bitnami MAMP로 HTML 연결하기 (0) 2022.01.07 다음글이전글이전 글이 없습니다.댓글