27
C언어 기초 2012년 이 은 주 “초보 프로그래머를 위한” 1장 : C언어의 개요

OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

C언어 기초

2012년

이 은 주

“초보 프로그래머를 위한”

1장 : C언어의 개요

Page 2: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

■ 프로그래밍의 기본 개념을 알아보고, 프로그래밍 언어에 대

해 생각해본다.

■ C 언어의 특징 및 활용 분야에 대해 알아본다.

■ 일반적인 C 프로그램 개발 과정에 대해 알아본다.

학습목표

2

Page 3: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

C 언어 소개

• 프로그래밍 언어란?

• C 언어의 특징

C 프로그램 개발

• 일반적인 C 프로그램의 개발 과정

• 그 밖의 C 컴파일러

학습정리

목차

3

Page 4: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1972년 데니스 리치와 켄 톰슨

• Unix 시스템 및 C언어 개발, AT& 벨 연구소

C언어의 소개

4

Page 5: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• C 언어의 장점

– 간결성

• 구문이 간결하고, 프로그램 개발에 꼭 필요한 핵심적인 기능들을 제공

– 이식성 (Portability)

• 어셈블리어 수준의 로-레벨 지원 기능을 제공하면서도 기계-독립적인 프로그램을 개발할 수 있음

– 효율성

• 프로그램 크기도 작고, 프로그램의 실행 속도도 빠름

C언어의 소개

5

Page 6: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• C 언어의 단점

– 배우기도 어렵고, 사용하기도 어려움

– 다른 언어에 비해 사용 시 주의 사항이 많음

• C 언어가 많이 사용되는 이유

– C를 배우면 C++, java, C#같은 언어를 이해하는데도 도움이 됨

– C 언어는 프로그래밍의 기본 개념을 이해하는데도 도움이 됨

• C 언어의 활용 분야

– 라이브러리나 응용 프로그램 개발

– 시스템 프로그램, 서버 어플리케이션, 게임 등의 성능 위주의 프로그램 개발

– 임베디드 프로그램 개발

C언어의 소개

6

Page 7: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로그램의 소스 코드 작성

– 소스 코드 편집기 이용

• 2단계 : 전처리기

• 3단계 : 컴파일 및 링크

– 컴파일러와 링커 이용

– 컴파일러는 .c 확장자를 갖는 소스 코드를 컴파일하여

.obj(또는 .o) 확장자를 갖는 오브젝트 코드 생성

– 링커는 오브젝트 코드를 연결해서 실행 파일 생성

• 4단계 : 실행

• 5단계 : 디버깅

C 프로그램 개발

7

Page 8: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 대부분 C++ 컴파일러가 C 컴파일러 역할을 동시에 제공

• C/C++ 컴파일러는 소스 파일의 확장자가 .c일 때는 C 컴파일을 수행하고, .cpp일 때는 C++ 컴파일을 수행

C 프로그램 개발

8

Page 9: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• Visual C++

– 윈도 플랫폼에서 가장 많이 사용되는 C 개발 환경

– Visual Studio 6.0

– Visual Studio 2005

– Visual Studio 2008

– Visual Studio 2010

– Visual Studio 2012

C 프로그램 개발

9

Page 10: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• Visual C++의 프로젝트

– 프로그램을 만들기 위해서 사용되는 소스 파일이나 헤더 파일에 대한 정보, 소스 파일을 컴파일 할 때 사용되는 컴파일 옵션, 오브젝트 파일이나 라이브러리를 링크할 때 사용되는 링크 옵션 등의 정보 포함

– Visual C++에서는 프로젝트를 먼저 생성하고 프로젝트내에서 사용될 소스 파일을 생성하는 방식으로 프로그램을 개발

1장. C언어의 개요

C 프로그램 개발

10

Page 11: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로젝트 생성

• 2단계 : 소스 파일 생성

• 3단계 : 소스 파일 작성

• 4단계 : 빌드

– 전처리기 처리 후 컴파일 및 링크 수행

• 5단계 : 실행

• 6단계 : 디버깅

1장. C언어의 개요

C 프로그램 개발

11

Page 12: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로젝트 생성(1/4)

1장. C언어의 개요

C 프로그램 개발

12

◈ 프로그램 실행

Page 13: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로젝트 생성(2/4)

1장. C언어의 개요

C 프로그램 개발

13

◈ 프로젝트 생성 메뉴

Page 14: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로젝트 생성(3/4)

C 프로그램 개발

14

프로젝트의 종류

프로젝트명, 생성위치

◈ 워크스페이스 - 서로 관련된 프로젝트를 하나로 묶어서 관리

- 디폴트로 모든 프로젝트는 하나의 워크스페이스에 속한다.

Page 15: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 1단계 : 프로젝트 생성(4/4)

C 프로그램 개발

Page 16: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 2단계 : 소스 파일 생성(1/2)

1장. C언어의 개요

C 프로그램 개발

16

◈ 파일 생성 메뉴

Page 17: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 2단계 : 소스 파일 생성(2/2)

1장. C언어의 개요

C 프로그램 개발

17

※ Visual C++을 C 컴파일러로 사용하려면 반드시 소스 파일의 확장자로 .c를 지정해야 한다

Page 18: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 3단계 : 소스 파일 작성

1장. C언어의 개요

C 프로그램 개발

18

◈ 소스 파일 작성

#include <stdio.h> int main(void) { printf("Hello World\n"); return 0; }

Page 19: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 4단계 : 빌드(1/2)

1장. C언어의 개요

C 프로그램 개발

19

◈ 빌드

Page 20: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 4단계 : 빌드(2/2)

1장. C언어의 개요

C 프로그램 개발

20

◈ 빌드 결과

Page 21: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 5단계 : 실행(1/2)

1장. C언어의 개요

C 프로그램 개발

21

◈ 프로그램 실행

Page 22: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 5단계 : 실행(2/2)

1장. C언어의 개요

C 프로그램 개발

22

◈ 프로그램 실행 결과

Page 23: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 6단계 : 디버깅(1/2)

1장. C언어의 개요

C 프로그램 개발

23

◈ 디버깅 시작

Page 24: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 6단계 : 디버깅(2/2)

1장. C언어의 개요

C 프로그램 개발

24

◈ 디버깅 화면

Page 25: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 그 밖의 C/C++ 컴파일러

– Visual Studio.NET

– C++ Builder

– Dev―C++

1장. C언어의 개요

C 프로그램 개발

25

Page 26: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• 프로그래밍 언어

– C, C++, java, C#과 같은 고급 언어를 이용하면 프로그램을 개발하기도 쉽고, 유지 보수하기도 쉬워짐

• C 언어의 특징

– 1972년 데니스 리치(Dennis Ritchie)와 켄 톰슨(Ken Thomson)가 개발.

– 특징 : 간결성, 이식성, 효율성

– 배우기나 사용하기는 어렵지만 프로그래머에게 최대한의 자유를 보장

1장. C언어의 개요

학습정리(1/2)

26

Page 27: OCW C언어 기초 - contents.kocw.netcontents.kocw.net/KOCW/document/2012/woosong/leeeunju/02.pdf · 2 . C 언어 소개 •프로그래밍 언어란? •C 언어의 특징 C 프로그램

• C 프로그램 개발

– 일반적인 C 프로그램의 개발 과정

– Visual C++을 이용한 C 프로그램 개발 과정

1장. C언어의 개요

학습정리(2/2)

27