두목넷으로
왕딱지 C · 0강 · 딱지 떼기 준비운동 · 인쇄는 머리글/바닥글(날짜·URL)을 꺼 주세요 — 쪽 머리·꼬리는 이미 들어가요
dumok.net ·
dumok.net · 왕딱지 C ·
dumok.net ·
[ ] / –쪽 🏠
00
LESSON 00 · 15분
딱지 떼기 준비운동
C 글을 번역해서 실행해 봐요

딱지 지도 — 지금 여기

00준비운동
01첫 줄 출력
02칸의 종류
03계산
04갈림길
05반복
06함수
07배열
08정렬 맛보기
09문자열
10주소
11빈 포인터·입력
12주소 넘기기
13구조체·졸업
이번 강에서 뗄 딱지
  • 컴퓨터 안에서 누가 일하고, 어디에 재료를 펼치는지 말해 봐요.
  • C 코드는 번역(빌드)을 거친 다음에 실행된다는 것을 말해 봐요.
  • OnlineGDB에서 코드 쓰기 → Run → 결과 확인을 한 바퀴 돌고, 빌드 오류가 나면 줄 번호를 찾아 고쳐요.
도착점 화면에 안녕하세요가 나타나요.
dumok.net
오늘의 딱지

프로그래밍을 처음 배우는 날에는 잘하는 것보다 한 번 끝까지 해 보는 것이 중요해요. 오늘은 C로 쓴 짧은 글을 컴퓨터에게 건네고, 화면에 글자가 나타나는 것을 내 눈으로 보는 날이에요.

C에는 실행하기 전에 꼭 거치는 단계가 하나 있어요. 번역이에요. 오늘은 그 번역이 성공하는 것도, 실패하는 것도 한 번씩 겪어 봐요.

오늘 뗄 딱지는 세 장이에요.

  1. 컴퓨터 안에서 누가 일하고, 어디에 재료를 펼치는지 말해 봐요.
  2. C 코드는 번역(빌드)을 거친 다음에 실행된다는 것을 말해 봐요.
  3. OnlineGDB에서 코드 쓰기 → Run → 결과 확인을 한 바퀴 돌고, 빌드 오류가 나면 줄 번호를 찾아 고쳐요.

오늘의 도착점: 화면에 안녕하세요가 나타나요. 그리고 일부러 낸 오류를 내 손으로 고쳐서 다시 안녕하세요를 봐요. 코드 여섯 줄의 뜻은 1강에서 한 줄씩 풀어요.

날짜:  내 이름:

그림으로 보기
1코드 쓰기2빌드(번역)3실행4결과 확인
그림 0-1오늘의 여행 지도 — 파이썬 때보다 ‘빌드’ 한 칸이 늘었어요. 하나씩 끝낼 때마다 아래 네모에 표시해요.
오늘 외울 딱지먼저 눈에 익혀요
✂ 오려서 들고 다니세요
소스 코드
사람이 C로 적은 글. 파일 이름은 main.c처럼 .c로 끝나요
편집 영역에 적어요
빌드
소스 코드를 번역하고 필요한 기능을 연결해 실행 파일을 완성하는 일
Run을 누르면 저절로 해요
실행 파일
번역이 끝나서 생긴 결과물. 이것을 실행해요
성공하면 생겨요
Run
빌드하고, 성공하면 바로 실행까지 하라는 버튼
한 번만 눌러요
오류(error)
번역을 멈추게 한 문제. 고치기 전에는 실행이 안 돼요
첫 줄부터 읽어요
경고(warning)
번역은 되지만 ‘여기 이상해요’ 하는 알림
지나치지 않고 읽어요

‘컴파일’이라는 말도 자주 들을 거예요. 컴파일은 번역하는 과정이고, 빌드는 번역한 뒤 필요한 기능을 연결해 실행 파일을 완성하는 과정까지 포함해요. 오늘은 Run 버튼이 둘 다 해 줘요. 오늘 손으로 할 일은 Run 한 번이에요.

카드를 가리고 말해 보세요.

  • 사람이 C로 적은 글은 예요.
  • 그 글을 번역하고 연결해 실행 파일을 완성하는 일은 예요.
  • 번역을 멈추게 하는 문제는 , 번역은 되지만 조심하라는 알림은 예요.

정답은 소스 코드, 빌드, 오류, 경고예요. 오늘은 빌드와 실행이 다른 단계라는 것만 또렷하면 돼요.

생활 비유컴퓨터를 작은 부엌이라고 생각해 봐요

왕두목 샘하고 달걀 요리를 한다고 생각해 볼까요? 보관장에서 달걀을 꺼내 조리대에 놓아요. 요리사는 레시피를 보고 요리해요. 다 된 음식은 식탁으로 나와요.

컴퓨터도 이렇게 역할을 나누어 보면 덜 어려워요.

부엌에서컴퓨터에서하는 일
요리사CPU(씨피유)명령에 따라 계산하고 일을 처리해요
조리대메모리(RAM, 램)지금 쓰는 명령과 데이터를 잠시 펼쳐 두어요
재료 보관장저장장치(SSD 등)파일과 프로그램을 오래 보관해요
레시피프로그램할 일을 정해진 순서와 규칙으로 적어 놓아요
식탁결과 화면처리한 결과를 사람이 확인해요

CPU는 일하는 담당, 메모리는 지금 작업하는 자리, 저장장치는 나중에도 꺼내 쓸 것을 두는 자리예요. 오늘은 철자 시험이 아니니 이 세 뜻만 가져가세요.

그런데 이 부엌의 요리사는 외국인이에요. 솜씨는 좋은데 우리가 쓴 C 레시피를 그대로 읽지 못해요. 요리사가 읽을 수 있는 말로 된 레시피만 따라 해요.

그래서 중간에 번역가가 있어요. 우리가 레시피를 다 써서 넘기면, 번역가가 처음부터 끝까지 읽고 번역본을 만들어요. 요리사는 그 번역본을 보고 요리해요.

부엌에서C에서하는 일
우리가 쓴 레시피소스 코드(main.c)할 일을 C의 규칙대로 적어요
번역가컴파일러소스 코드를 통째로 읽고 번역해요
번역본실행 파일CPU가 실행할 수 있는 형태예요

번역가에게는 고집이 하나 있어요. 레시피에 문법이 틀린 문장이 하나라도 있으면 번역본을 만들지 않아요. 대신 ‘4번째 줄 끝에 마침표가 없어요’ 같은 메모를 돌려줘요. 그 메모가 바로 오류 메시지예요. 메모를 보고 고쳐서 다시 넘기면, 그때 번역본이 생기고 요리가 시작돼요.

비유에는 한계가 있어요. 실제 컴퓨터 안에 요리사나 번역가가 있지는 않아요. 그리고 컴파일러는 사람처럼 뜻을 짐작해 고쳐 주지 않아요. 규칙에 맞지 않으면 멈출 뿐이에요. 그래서 기호 하나까지 정확히 적어야 해요.

한번 짚어 볼까요? 레시피 넷째 줄에 마침표가 빠졌어요. 요리사는 첫째 줄 요리라도 시작할까요? 아니에요. 이번 레시피로 된 새 번역본이 생기지 않았으니, 요리사는 이번 레시피의 요리를 시작하지 못해요.

그림으로 보기
우리가 쓴 레시피main.c번역가컴파일러번역본실행 파일요리사CPU완성 요리결과 화면넘겨요번역해요보고 따라 해요완성
그림 0-2외국인 요리사와 번역가 — 번역본(실행 파일)이 생겨야 요리사(CPU)가 일을 시작해요. 역할을 이해하기 위한 비유예요.
메모리 그림main.c가 화면에 글자를 내기까지
1저장장치main.c 소스2컴파일러빌드(번역)3실행 파일번역 결과물4메모리실행할 때 올라가요5CPU가 명령 처리6출력안녕하세요↵화면읽어요만들어요올려요처리출력
그림 0-3빌드하고 실행하기까지 — 소스 파일이 번역되어 실행 파일이 되고, 실행할 때 메모리에 올라가 CPU가 처리해요. 실제 메모리 배치를 그린 것은 아니에요.

그림을 손가락으로 따라가 보세요. 소스 코드는 처음에 저장장치에 파일로 있어요. 컴파일러가 그 파일을 읽어 실행 파일을 만들어요. 실행할 때가 되면 실행 파일이 메모리에 올라가고, CPU가 그 안의 명령을 하나씩 처리해요. 처리 결과로 글자가 화면에 나타나요.

보통 메모리에 펼쳐 둔 것은 전원이 꺼지면 사라지고, 저장장치에 저장한 파일은 전원을 껐다 켜도 남아요. 그래서 작업하다가 ‘저장’을 하는 거예요.

오늘 쓸 OnlineGDB 같은 온라인 실행기에서는 이 모든 일이 내 컴퓨터가 아니라 사이트의 컴퓨터에서 일어나요. 우리는 브라우저로 코드를 보내고 결과만 받아 보는 거예요. 그래서 설치할 것이 없어요. 다만 사이트에 쓴 코드가 자동으로 보관되는지는 사이트마다 달라요. 오늘 쓴 코드는 공책에도 적어 두면 안심이에요.

첫 실행설치하지 않고 한 번 해 봐요

브라우저(크롬이나 엣지 같은 인터넷 보는 프로그램)를 열고, 맨 위 주소 칸에 아래 주소를 적어요. 검색창이 아니라 주소를 적는 긴 칸이에요.

주소: https://www.onlinegdb.com/online_c_compiler

사이트의 배치나 안내 문구는 바뀔 수 있어요. 버튼 위치를 외우지 말고 언어 선택 칸·편집 영역·Run·결과 영역이라는 역할을 찾아 주세요. 회원가입이나 결제 화면으로 들어갈 필요는 없어요.

웹 브라우저 · OnlineGDB
www.onlinegdb.com/online_c_compiler
OnlineGDB C 실행기 첫 화면(기본 예제, 언어 C)12345
실제 화면 0-AOnlineGDB C 실행기 첫 화면(기본 예제, 언어 C) — ① 언어 선택 칸(Language → C) · ② 편집 영역(기본 예제) · ③ Run 버튼 · ④ 결과 영역(비어 있음) · ⑤ Stop 버튼

전체 화면은 이렇게 생겼어요. 이제 글자를 읽어야 하는 곳만 크게 확대해서 볼게요.

편집 영역 바로 위 줄에 단추가 나란히 있어요. 왼쪽부터 초록 Run, Debug, Stop, Share, Save, Beautify예요.

웹 브라우저 · OnlineGDB
도구 줄(평소) — 초록 Run, 옆 ▼, Debug, 흐린 분홍 Stop, Share, Save, Beautify
실제 화면 0-B도구 줄(평소) — 초록 Run, 옆 ▼, Debug, 흐린 분홍 Stop, Share, Save, Beautify

오늘 누를 단추는 초록 Run 하나예요. Run 바로 옆의 작은 ▼는 누르지 않아요. Stop은 평소에는 위 그림처럼 흐린 분홍색이에요. 프로그램이 실행되는 동안에만 아래 그림처럼 진한 빨강으로 켜지고, 그동안 Save·Beautify는 흐려져요.

웹 브라우저 · OnlineGDB
도구 줄(실행 중) — Stop만 진한 빨강으로 켜지고 Save·Beautify가 흐려져요
실제 화면 0-C도구 줄(실행 중) — Stop만 진한 빨강으로 켜지고 Save·Beautify가 흐려져요

오늘 예제는 눈 깜짝할 새 끝나서 Stop을 쓸 일이 없어요. 끝나지 않는 반복을 배우는 5강에서 다시 만나요.

1. 언어가 C인지 확인해요

오른쪽 위 Language 옆 칸에 C가 보이면 그대로 둬요. 처음 열면 보통 C로 되어 있어요.

웹 브라우저 · OnlineGDB
오른쪽 위 Language 칸 — C로 되어 있어요
실제 화면 0-D오른쪽 위 Language 칸 — C로 되어 있어요

C++나 Python 3처럼 다른 언어가 보이면 그 칸을 눌러 목록을 열고, 맨 위 -- select -- 바로 아래의 C를 골라요. 목록에는 C++, C++ 14, C (TurboC)처럼 이름이 비슷한 항목이 많아요. 우리가 쓸 것은 꾸밈말 없이 딱 C 한 글자예요.

웹 브라우저 · OnlineGDB
언어 목록을 연 모습 — 맨 위 C를 골라요(C++·C (TurboC)는 다른 항목)
실제 화면 0-E언어 목록을 연 모습 — 맨 위 C를 골라요(C++·C (TurboC)는 다른 항목)

2. 편집 영역을 비우고 코드를 넣어요

처음에는 사이트가 넣어 둔 예제 코드(영어 안내와 Hello World)가 들어 있어요. 편집 영역 안을 한 번 클릭하고, Windows는 Ctrl+A, Mac은 Command(⌘)+A로 전체 선택해요. 코드 부분만 파랗게 선택됐는지 확인한 뒤 Delete 키로 지워요. 화면 전체가 선택됐다면 편집 영역을 다시 클릭하고 해 보세요. 그리고 아래 여섯 줄을 넣어요. 빈 줄도 그대로예요. 오늘은 뜻을 몰라도 괜찮아요. 똑같이 따라 쓰는 것이 오늘 할 일이에요.

main.c
#include <stdio.h> int main(void) {    printf("안녕하세요\n");    return 0;}
실행 결과
안녕하세요

복사해서 넣어도 괜찮아요. 직접 칠 때는 이 세 가지만 챙겨요.

  • 영어 소문자로 써요. 한글 입력 상태라면 한/영 키로 영어로 바꿔요.
  • 따옴표는 키보드의 반듯한 큰따옴표 "를 써요. 줄 끝의 ;(세미콜론)도 빠뜨리지 않아요.
  • \n은 역슬래시 키 다음에 소문자 n이에요. 한국어 키보드에서는 역슬래시 키에 원화(₩) 모양이 그려져 있고, 글꼴에 따라 화면에 ₩로 보이기도 해요. 그 키로 친 글자는 역슬래시라서 괜찮아요. 다만 문서에서 원화 기호를 복사해 오지는 말아요.

편집 영역은 여는 괄호나 따옴표를 치면 닫는 짝을 저절로 하나 더 넣어 주기도 해요. 그럴 때 닫는 짝을 또 치면 두 개가 돼요. 다 친 뒤에 책의 코드와 짝을 하나씩 대조해요. 제대로 넣었다면 편집 영역이 아래처럼 보여요. 왼쪽 줄 번호가 1부터 6까지 있고, 넷째 줄 끝에 ;가 있어요.

웹 브라우저 · OnlineGDB
편집 영역에 넣은 여섯 줄 — 줄 번호와 함께 책과 대조해요
실제 화면 0-F편집 영역에 넣은 여섯 줄 — 줄 번호와 함께 책과 대조해요

3. Run을 한 번 눌러요

Run은 ‘빌드하고 실행해 줘’라는 부탁이에요. 한 번 누르고 잠깐 기다려요. 느리다고 여러 번 연달아 누르지 않아요.

4. 결과 영역을 봐요

웹 브라우저 · OnlineGDB
결과 영역 — 흰 글씨 안녕하세요가 내 출력, 초록 두 줄은 사이트 안내
실제 화면 0-G결과 영역 — 흰 글씨 안녕하세요가 내 출력, 초록 두 줄은 사이트 안내

결과 영역에 안녕하세요가 보이면 빌드도, 실행도 성공한 거예요. 그 아래에는 빈 줄 하나를 두고 초록색 글 두 줄이 붙어요.

사이트 안내 · 내 코드의 출력이 아니에요
...Program finished with exit code 0
Press ENTER to exit console.

이 두 줄은 내 코드가 아니라 사이트가 덧붙이는 안내예요. ‘프로그램이 끝났어요(끝낼 때 돌려준 값은 0)’, ‘엔터를 누르면 결과 창을 닫아요’라는 뜻이에요. 내 코드가 출력한 글은 흰색 안녕하세요 한 줄뿐이에요. 둘을 나누어 보세요.

여섯 줄 중에서 화면에 나온 글은 넷째 줄의 큰따옴표 안쪽이에요. 오늘은 이것만 짚고 가요.

printf("안녕하세요\n");보여 주는 함수글자의 시작과 끝줄 바꾸기 표시문장 끝
그림 0-5넷째 줄 조각 이름표 — 화면에 나오는 것은 큰따옴표 안쪽 글자뿐이에요. \n 은 1강에서 자세히 봐요.

넷째 줄을 손가락으로 짚어 가며 세 가지만 확인해요.

  • printf는 글을 화면에 내보내는 일을 맡은 도구의 이름이에요. 프로그래밍에서는 이런 도구를 함수라고 불러요.
  • 이름 바로 뒤의 소괄호 ( ) 안은 그 도구에 건넬 내용을 적는 자리예요.
  • 큰따옴표 " "는 ‘여기부터 여기까지가 글자 내용’이라는 표시예요. 그래서 따옴표는 화면에 나오지 않고, 그 안의 안녕하세요만 나와요.

끝에 붙은 \n과 ;, 그리고 나머지 다섯 줄이 하는 일은 1강에서 조각조각 나눠 읽어요.

5. 오늘 한 일을 말해 봐요

“코드를 적었어요. Run을 눌러 빌드하고 실행했어요. 결과 영역에서 결과를 확인했어요.” 이 세 문장을 소리 내어 말하면 한 바퀴를 돈 거예요.

예제 2 · 일부러 한 번 틀려 봐요

이번에는 오류를 일부러 만들어요. 넷째 줄 끝의 ;만 지우고 Run을 눌러요. 나머지는 그대로예요.

main.c
#include <stdio.h> int main(void) {    printf("안녕하세요\n")    return 0;}
빌드 메시지 · 실행되지 않았어요
main.c: In function ‘main’:
main.c:4:27: error: expected ‘;’ before ‘return’
    4 |     printf("안녕하세요\n")
      |                           ^
      |                           ;
    5 |     return 0;
      |     ~~~~~~
웹 브라우저 · OnlineGDB
넷째 줄 ; 를 지우고 Run — 빨간 Compilation failed 아래 첫 error 줄 main.c:4:27
실제 화면 0-H넷째 줄 ; 를 지우고 Run — 빨간 Compilation failed 아래 첫 error 줄 main.c:4:27

결과 영역 맨 위에 빨간 글씨로 Compilation failed due to following error(s).가 나와요. ‘아래 오류 때문에 번역(컴파일)에 실패했어요’라는 사이트 안내예요. 그 아래에 빌드 메시지가 이어져요(결과 영역 위쪽 탭이 stderr로 바뀌어 있어요).

영어가 쏟아져서 놀라셨지요? 전부 읽지 않아도 돼요. error라는 말이 들어 있는 첫 줄만 봐요.

조각읽는 법
main.c문제가 있는 파일 이름
44번째 줄
27그 줄에서 몇 번째 자리쯤인지(한글은 한 글자가 여러 자리로 세어져요)
error번역을 멈춘 문제
expected ‘;’ before ‘return’‘return 앞에 ;가 있어야 해요’

메시지 아래쪽 그림도 도움을 줘요. 4번째 줄 끝을 ^로 가리키고, 그 밑에 ;를 넣으라고 보여 주지요.

재미있는 점이 하나 있어요. 컴파일러는 5번째 줄의 return을 읽고 나서야 ‘앞 문장이 안 끝났네’ 하고 알아채요. 그래서 오류 위치가 빠진 곳 바로 다음을 가리키는 일이 많아요. 표시된 줄과 그 바로 앞 줄을 함께 보는 습관을 들여요.

이제 ;를 다시 넣고 Run을 눌러요. 결과 영역에 다시 안녕하세요가 나오면 오늘의 도착점에 닿은 거예요.

결과 따라 적기어디까지 갔는지 적어요
Run 누르기빌드 성공?성공이면실패하면실행 → 출력빌드 메시지결과 영역 확인
그림 0-6어디서 멈췄나 — 빌드가 실패하면 실행은 시작되지 않고 결과 영역에 빌드 메시지가 나와요.

추적표는 어려운 검사표가 아니에요. 내가 한 일과 그다음 달라진 것을 차례로 적는 표예요. C에서는 빌드가 성공했는지를 꼭 한 줄 적어요. 아직 실행하지 않았다면 빈칸으로 두어요.

차례내가 한 일확인할 곳확인한 내용
1여섯 줄을 넣었어요편집 영역넷째 줄 printf("안녕하세요\n");
2Run을 한 번 눌렀어요결과 영역빌드를 요청했어요
3빌드 결과를 봤어요결과 영역error 없음 → 성공
4실행 결과를 읽었어요결과 영역안녕하세요

이번에는 예제 2를 내 화면을 보고 적어요.

내가 확인할 것내 기록
지운 기호와 줄
첫 error 줄의 줄 번호
실행까지 갔나요? 갔어요  빌드에서 멈췄어요
고친 뒤 다시 Run한 결과

대조 답: 넷째 줄 끝의 ;를 지웠어요. 첫 error 줄은 4번째 줄을 가리켜요. 빌드에서 멈췄기 때문에 실행은 되지 않았어요. 고친 뒤에는 안녕하세요가 나와요.

막혔을 때는 이것부터 봐요

지금 보이는 상황먼저 할 일
아무 결과도 안 보여요Run을 눌렀는지, 결과 영역을 보고 있는지 확인해요
실행이 끝나지 않고 글이 계속 나와요빨갛게 켜진 Stop을 눌러요. 이 사이트는 저절로 멈추지 않아요. 바로 옆 Share를 잘못 누르지 않게 조심해요
error라는 말이 보여요첫 error 줄의 줄 번호와 그 앞 줄을 책과 기호까지 대조해요
언어가 C++나 다른 언어로 되어 있어요언어 선택 칸을 C로 바꾸고 다시 Run해요
사이트 자체가 안 열려요인터넷 연결과 주소를 확인해요. 코드 오류와는 다른 문제예요

도움을 구할 때는 입력한 코드와 오류 메시지 첫 줄을 함께 보여 주면 좋아요. 이름·연락처 같은 개인정보는 가려 주세요.

안 보고 직접 쓰기손이 기억하게 해 봐요

먼저 앞쪽을 가려요. 바로 떠오르지 않아도 한 번 생각해 보는 것이 연습이에요.

연습 1. 순서를 써요.

코드 쓰기 → → 실행하기 → 결과 확인하기

연습 2. 역할을 이어요.

  • CPU → (일을 처리해요 / 파일을 오래 보관해요)
  • 메모리 → (지금 작업하는 자리예요 / 종이에 결과를 인쇄해요)
  • 컴파일러 → (소스 코드를 번역해요 / 오류를 짐작해서 고쳐 줘요)
  • 실행 파일 → (번역이 끝나서 생긴 결과물이에요 / 사람이 처음 적은 글이에요)

연습 3. 오류 메시지에서 줄 번호를 찾아요.

아래는 다른 코드에서 나온 실제 빌드 메시지의 첫 error 줄이에요.

main.c:5:13: error: expected ‘;’ before ‘}’ token

몇 번째 줄을 먼저 봐야 할까요? 번째 줄 빠진 기호는?

연습 4. 빈칸을 채워요.

종이에 쓰는 연습 틀이에요. 대괄호와 번호는 실행기에 넣지 않아요.

①("안녕하세요\n");

①에 쓸 말:

연습 5. 여섯 줄을 보고 따라 써요.

오늘은 외우지 않아도 돼요. 앞의 첫 실행 코드를 보면서 종이에 한 번 따라 쓰고, 그다음 실행기에 직접 쳐서 Run해 보세요. 손으로 한 번 써 본 코드는 1강에서 훨씬 빨리 읽혀요.

스스로 대조하는 답

연습 1은 ‘빌드(번역)하기’예요. 연습 2는 ‘일을 처리해요 / 지금 작업하는 자리예요 / 소스 코드를 번역해요 / 번역이 끝나서 생긴 결과물이에요’예요. 연습 3은 5번째 줄, 빠진 기호는 ;예요. 메시지는 } 앞을 가리키지만 실제로 빠진 곳은 5번째 줄 끝이에요. 연습 4는 printf예요.

연습 3의 메시지는 아래 코드에서 나왔어요. 5번째 줄 return 0 뒤에 ;가 빠져 있어요.

main.c
#include <stdio.h> int main(void) {    printf("Hello\n");    return 0}
빌드 메시지 · 실행되지 않았어요
main.c: In function ‘main’:
main.c:5:13: error: expected ‘;’ before ‘}’ token
    5 |     return 0
      |             ^
      |             ;
    6 | }
      | ~

OnlineGDB 결과 영역에서는 이렇게 보여요.

웹 브라우저 · OnlineGDB
다섯째 줄 return 0 뒤 ; 를 지우고 Run — 첫 error 줄 main.c:5:13
실제 화면 0-I다섯째 줄 return 0 뒤 ; 를 지우고 Run — 첫 error 줄 main.c:5:13

;를 넣어 고친 코드예요. 실행하면 Hello가 나와요.

main.c
#include <stdio.h> int main(void) {    printf("Hello\n");    return 0;}
실행 결과
Hello

내가 빠뜨렸던 것 한 가지:

시험에선 이렇게 나와요기출형 1문항

학습용 창작 문항이에요. 실제 기출문제를 인용한 것은 아니에요.

문제. C 프로그램에 대한 설명으로 가장 알맞은 것은 무엇인가요?

①빌드가 실패해도 오류가 없는 앞부분 줄은 먼저 실행된다.
②컴파일러는 소스 코드를 CPU가 실행할 수 있는 형태로 번역한다.
③오류 메시지는 맨 아래 줄부터 읽고 고친다.
④경고(warning)가 하나도 없으면 실행 결과는 항상 맞다.

내가 고른 답:  이유:

정답먼저 풀고 눌러서 펼쳐 보세요
②

해설: 컴파일러는 번역가예요. 소스 코드를 번역해요. ①은 빌드와 실행을 섞었어요. 빌드가 실패하면 이번 코드로 새 실행 파일을 완성하지 못하니, 이번 코드의 첫 줄도 실행되지 않아요. ③은 순서가 거꾸로예요. 첫 error 줄부터 고쳐요. ④는 지나친 믿음이에요. 경고가 없어도 내가 원하는 결과가 아닐 수 있어요. 결과는 실제 실행으로 대조해요.

딱지 떼기 체크
다 했으면
딱지 떼기
도장
  • CPU·메모리·저장장치를 요리사·조리대·보관장으로 나누어 말할 수 있어요.
  • 소스 코드, 빌드(컴파일), 실행 파일을 순서대로 말할 수 있어요.
  • Run 한 번에 빌드와 실행이 이어서 일어난다는 것을 알아요.
  • OnlineGDB에서 언어 선택 칸·편집 영역·Run·결과 영역을 찾았어요.
  • 여섯 줄을 실행하고 안녕하세요를 내 눈으로 확인했어요.
  • 일부러 낸 오류에서 첫 error 줄의 줄 번호를 읽고, 고친 뒤 다시 Run했어요.

아직 실행하지 못했다면 해당 칸은 비워 두세요. 나중에 실행하고 체크하면 돼요. 다음에 할 일을 남겨 둔 표시예요.

오늘 내가 뗀 딱지:  다시 볼 곳:

dumok.net · 왕딱지 — 코딩 초보 딱지 떼기