[CS50] C 기초

TIL

C 언어

C는 오래되고 전통적인 텍스트 기반 언어이다.

#include <studio.h>

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

 

여기서 int main(void)는 Scratch의 "초록색 깃발을 클릭했을 때" 블록과 같다. 프로그램의 시작을 의미한다.

 

printf 함수

printf("hello, world\n")은 Scratch의 "'hello, world'라고 말하기" 블록과 같다.

텍스트는 항상 " "쌍따옴표로 감싸야 하며, 문장 끝에는 세미콜론(;)을 붙인다. 일상에서 마침표(.)를 쓰는 것과 같다.

 

include

#include <stdio.h>는 stdio.h 파일을 불러와 printf 함수를 사용할 수 있게 한다.

 

C로 작성한 코드는 파일이름.c 형식으로 저장해야 한다. Word처럼 자동으로 확장자가 붙지 않으므로 직접 .c를 붙여야 한다.

 

컴파일러

우리가 작성한 코드는 소스 코드라고 불린다. 컴퓨터가 이해하려면 2진수로 작성된 머신 코드로 변환해야 하는데, 이 작업을 컴파일러가 수행한다.

 

터미널에서 $옆에 명령어를 입력한다.

$ clang hello.c

clang이라는 컴파일러로 hello.c를 컴파일하라는 의미이다.

 

컴파일 결과 a.out파일이 생성된다. 다음 명령어로 실행한다.

$ ./a.out
# 출력: hello, world

./a.out은 현재 디렉토리의 a.out 프로그램을 실행하라는 의미다.

 

연습문제

Q. C로 "hello, boostcourse"를 출력해보자

#include <stdio.h>

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

 

'TIL' 카테고리의 다른 글

[CS50] C 언어 - 조건문과 루프  (0) 2025.11.05
[CS50] C 언어 - 문자열  (0) 2025.11.05
[TS] 조건부 타입과 infer를 활용한 타입 추론 연습  (0) 2025.11.05
[TS] infer (타입 추론)  (0) 2025.11.05
[TS] 분산적인 조건부 타입  (0) 2025.11.05
'TIL' 카테고리의 다른 글
  • [CS50] C 언어 - 조건문과 루프
  • [CS50] C 언어 - 문자열
  • [TS] 조건부 타입과 infer를 활용한 타입 추론 연습
  • [TS] infer (타입 추론)
고견
고견
개발 자국 남기기
  • 고견
    개발자국
    고견
  • 전체
    오늘
    어제
    • 분류 전체보기 (157) N
      • Frontend (29)
        • Next.js (16)
        • JavaScript (7)
      • CS (19) N
        • 자료구조 (9)
        • 알고리즘 (5)
        • 운영체제 (4) N
        • 네트워크 (1) N
      • TIL (93)
      • Dev Log (16)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    react
    memory
    CS
    알고리즘
    algorithm
    ai 감성 일기장
    타입 좁히기
    제네릭
    Spa
    cs50
    Trouble Shooting
    generic
    자료구조
    함수 타입
    javascript
    인터페이스
    페이지 라우터
    Next.js
    트러블 슈팅
    typescript
    App Router
    C
    useState
    문자열
    앱 라우터
    바닐라 자바스크립트
    Pages Router
    배열
    클래스
    emotion diary
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
고견
[CS50] C 기초
상단으로

티스토리툴바