산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C 프로그램 구조 이해: Hello World부터 컴파일 실행까지

C 프로그램의 기본 구성 요소를 Hello World 예제로 분석하고, 소스 코드에서 실행 파일까지의 컴파일 과정을 단계별로 설명합니다.

C 프로그램의 5가지 구성 요소

Hello World 상세 분석

#include <stdio.h>      // 전처리기: 표준 입출력 헤더 포함

int main(void) {        // 진입점 함수: int 반환, 인자 없음
    /* 블록 주석: 설명용 */
    printf("Hello, World!\n");  // 함수 호출 문장; 세미콜론 필수
    return 0;           // 정상 종료 코드 반환
}

라인별 설명

  1. #include <stdio.h>: 표준 라이브러리 헤더 포함. printf 등 선언 제공

  2. int main(void): 프로그램 시작점. void는 인자 없음 명시 (권장)

  3. { ... }: 블록(복합 문장), 함수 본문 범위 지정

  4. printf(...): 표준 출력으로 문자열 출력. \n은 개행 문자

  5. return 0;: 호출자(OS/쉘)에 성공 알림. 0이 아닌 값은 오류 의미

컴파일 4단계 과정

단계명령입력출력설명
1. 전처리gcc -E.c.i헤더 포함, 매크로 치환, 주석 제거
2. 컴파일gcc -S.i.s어셈블리어 코드 생성
3. 어셈블gcc -c.s.o기계어 오브젝트 파일 생성
4. 링크gcc.o + 라이브러리실행파일심볼 해결, 최종 실행 파일 생성

한 번에 컴파일/실행

$ gcc hello.c -o hello    # -o로 출력 파일명 지정
$ ./hello                   # 현재 디렉터리 실행 (./ 필수)
Hello, World!

유용한 컴파일 옵션

gcc -Wall -Wextra -pedantic -std=c11 -g -O0 hello.c -o hello
# -Wall -Wextra: 경고 최대화
# -pedantic: 표준 엄격 준수
# -std=c11: C11 표준 지정
# -g: 디버그 심볼 포함
# -O0: 최적화 끄기 (디버깅용)

자주 발생하는 초보자 실수

디버깅 기초 (GDB)

$ gcc -g hello.c -o hello
$ gdb ./hello
(gdb) break main      # 브레이크포인트
(gdb) run             # 실행
(gdb) next            # 한 줄 실행 (함수 진입 안 함)
(gdb) step            # 한 줄 실행 (함수 진입)
(gdb) print var       # 변수 값 출력
(gdb) continue        # 계속 실행
(gdb) quit            # 종료

C 언어

  1. 마이크로프로세서 프로그래밍 기초
  2. C# Hello World – 첫 C# 애플리케이션 만들기
  3. C 구조체: 전달, 반환, 참조 다루기 마스터하기
  4. Java Hello World: 첫 프로그램 작성하기
  5. 체중 감량의 규율을 유지보수 혁신에 적용하기: 지속가능한 우수성 구축
  6. C++ 함수 완전 정복: 실전 코드 예제로 이해하기
  7. C# 프로그램 구조 이해: 핵심 구성 요소와 Hello World 예제
  8. 최적 성능을 위한 스핀들 워밍업 절차
  9. Mach3 M-코드 종합 가이드: CNC 가공을 위한 필수 참조
  10. 산업별 최적 컨베이어 구조물 선택 가이드