• 검색 결과가 없습니다.

2. 프로그래밍기초프로그래밍기초2.1 컴파일러와Visual Studio

N/A
N/A
Protected

Academic year: 2022

Share "2. 프로그래밍기초프로그래밍기초2.1 컴파일러와Visual Studio"

Copied!
29
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

2. 프로그래밍 기초

(2)

2.1 컴파일러와 Visual Studio

(3)

컴파일러

자신의 개발 환경에 맞는 C 컴파일러 선택

– Windows 환경 : Visual Studio, Dev C++

– Mac 환경 : xcode – Linux 환경 : cc, gcc

Visual Studio를 선택하는 이유

– 개발자가 사용하는 PC가 Windows 환경(윈도우7/8) – 개발할 프로그램이 실행될 환경 역시 Windows 환경 – 가장 고도화되고 편리한 개발 도구

– 가장 많은 C 개발자가 사용 – 도움을 받기 쉽다.

강C프로그래밍 3

부록 참고

다른 환경에서 개발하더라도 배우는 동안에는 Visual Studio를 사용하자

(4)

IDE

C 프로그램 개발에 필요한 도구들

– C 코드 에디터(편집기) – 컴파일러

– 링커 – 디버거

IDE란 (Integrated Development Environment)

– 통합 개발 도구/환경(Integrated Development Environment)

– 하나의 프로그램 안에서 프로그램 입력, 컴파일, 실행, 디버깅을 지 원

– 개발자를 위한 편리한 개발 환경

코딩 빌드 (컴파일 & 링

크) 실행 디버깅

(5)

Visual Studio

1-2년마다 새로운 버전이 출시됨

– 2010 – 2012 – 2013 – 2015

개발 도구별 제품군

– Community – Express – Ultimate – Premium

– Professional

– Team Foundation Server강C프로그래밍 5

비싼 가격, 고급 도구가 포함됨

비교적 최신 버전이면서 다수의 개발자가 사용

무료로 사용 가능하면

충분한 기능을 제공

(6)

Visual Studio - 다운로드

마이크로소프트 홈페이지에서 다운로드 및 설치 가능

https://www.visualstudio.com/products/visual-studio- community-vs

언어팩

(7)

Visual Studio - 실행화면

강C프로그래밍 7

메뉴와 단축모음

솔루션 탐색기

코드창

출력 또는 디버그창

(8)

Dev C++

윈도우 환경에서 사용 가능한 또 하나의 IDE 무료

필요 용량이 작아 빠르게 설치 및 운영 gcc 를 포함

http://orwelldevcpp.blogspot.kr/

(9)

2.2 프로그램의 작성과 실행

9

(10)

프로그램 개발 과정

프로그램 작성

빌드 (컴파일, 링크)

실행 및 결과 확인

정상

정상

빌드 오류

실행 중 오류 발생

디버깅

(11)

프로젝트 (Visual Studio)

1 프로그램 = 1 프로젝트 프로젝트

– 1 이상의 소스 파일 – 0 이상의 헤더 파일 – 0 이상의 리소스 파일

프로그램을 만드는 과정

– 프로젝트를 생성한다.

– 소스 파일을 생성한다.

– 소스 파일에 입력한다.

– 컴파일하고 실행한다.

강C프로그래밍 11

(12)

프로젝트 생성

프로젝트 생성

결과

(13)

소스 파일 생성

강C프로그래밍 13

결과

(14)

#include <stdio.h>

int main(void) {

printf("Hello World \n");

return 0;

}

소스코드 입력

엔터키 근처에 있고, 백슬래시(\)와 동일

(15)

컴파일과 빌드

컴파일 결과

강C프로그래밍 15

컴파일 성공

컴파일 실패

(16)

빌드 오류 처리

컴파일 오류

– 프로그램에 문법상 오류가 있을 때

– 출력에서 오류의 위치와 내용을 확인한다. 출력된 메시지를 보면 무엇이 문제인지 대부분 알 수 있다.

(17)

실행 ( F5 )

실행하면 검은 창에 결과를 보여준다.

결과 윈도우가 금방 없어진다면

– 설정을 변경한 후, Ctrl – F5 로 실행

강C프로그래밍 17

(18)

Dev C++의 개발

특징

– 프로젝트 생성 없이 소스파일만으로 실행 가능 – 컴파일 (F9)

– 컴파일 및 실행 (F11)

(19)

2.3 새로운 프로그램 작성

19

(20)

새 프로젝트의 생성

어디에 만들 것인가

– 프로젝트 파일은 어디에 저장할 것인가 – 소스 파일은 어디에 저장되는가

이름은 무엇으로 할 것인가

– 프로젝트 이름 = 프로그램 이름

소스 파일의 이름은 무엇으로 할 것인가

– 프로젝트 이름과 같게 한다.

– 나중에는 소스 파일이 여러 개 생기므로, 이름만으로 기능이 구 별되도록 좀 더 상세히 붙이는 것이 좋다.

(21)

프로젝트 옮기기

집에서 작업한 프로젝트를 학교에서 계속 하려면?

– 프로젝트 폴더의 위치를 확인한 후,

– 프로젝트 폴더를 통째로 복사하여 이동한다.

소스 파일만 있다면?

– 프로젝트 생성 후 소스파일 추가하여 작업

중요한 파일

– 프로젝트 파일, 소스코드 파일

중요하지 않은 파일

– 임시 파일, 중간 생성 파일

강C프로그래밍 21

버전 관리에 유의하라

(22)

컴파일 후 파일들

소스파일

(*.c)

프로젝트 파일

(*.sln)

실행파일

(.exe)

중간파일

(.pdb, .ilk)

중간파일

(*.obj)

중간파일 설정 파일

(*.suo)

프로젝트 파일

중요 파일

최종 파일 중간 파일

Debug

Project Debug

Project

(23)

소스 코드 입력시 편의기능

문법 강조 자동 완성

자동 들여쓰기 페어링

도움말

문법 자동점검

강C프로그래밍 23

(24)

실행하는 법

실행파일 찾기

– Debug 폴더에 있음

– 빌드가 성공해야 실행파일이 존재함

프로그램 실행

– VS(Visual Studio)에서 실행 – 명령창에서 실행

– 탐색기에서 실행

(25)

2.4 프로그램의 이해

25

(26)

프로그램의 이해(1)

#include <stdio.h>

int main() {

printf("Hello World\n");

}

\n 은 화면에 나오지 않음

복사해서 여러 줄 넣으면 화면 출력도 여러 줄

“” 안의 내용을 화면에 출력함 뭔가 중요한 부분

(27)

프로그램의 이해(2)

강C프로그래밍 27

#include <stdio.h>

int main() {

printf("Hello World\n");

}

공백은 의미 없음

대소문자 구별함. 대문자로 쓰면 에러

끝에 ; 붙임

쌍(pair)으로 나옴

줄바꿈의 개수는 의미 없음

(28)

좋은 프로그램 만들기

컴파일 오류가 없어야 한다.

요구사항에 잘 부합하여야 한다.

소스 코드를 알아보기 쉬워야 한다.

사용 편의성이 있어야 한다.

성능과 메모리 사용이 효율적이어야 한다.

(29)

Basic Color

Basic Font

- 제목/본문 텍스트 : 나눔 고딕 / English - 소스코드 : printf (consolas)

- Notice : 나눔고딕 볼드

Layout

- 제목 : Size 32, Bold, Blue,

- 본문 : Size 18~, Bold/Normal, Black, 줄간격 1.4, 6pt/6pt - 소스코드 :

Size 16,

printf (consolas), Gray, 줄간격 1.4

- Notice : Size 18, Bold/Normal, Black

Visual Guideline / 가이드라인

참조

관련 문서

약국은 당초 수집 목적과 합리적으로 관련된 범위에서 정보주체에게 불이익이 발생하는지 여부, 암호화 등 안전성 확보에 필요한 조치를 하였는지 여부 등을

(Taekwondo, Weight Lifting Players) (90 min × 6 days/week) Warming

[r]

한국산업관계연구원에서는 인천광역시와 함께 ‘인천광역시 학교급식지원센터 설치 타 당성 및 운영 방안 검토 연구 용역’을 진행하고 있습니다. 인천광역시에서는

미지수 x, y가 분모에 있으므로

불편부당(impartial)함으로써 공정성(fairness)이 확보되면 능력의 차이 는 부차적이다.. 이 같은 관점에서 친기업(business friendly)

[r]

서버 스토리지 네트워크를 하나의 인프라로 구현 베어메탈을 클라우드처럼 빠르게 인프라 구축 및 운영. 를 통한