프로그램 구조
2 - 4 전처리와 입출력 함수
목차
- 전처리기(preprocessor)가 무엇인가
- printf 함수(출력함수)
- scanf 함수(입력함수)
- 예제 프로그램 (입출력 관련 간단한 예제 프로그램)
전처리기(preprocess)
- 전처리(preprocess)는 컴파일러가 프로그래밍 언어를 기계어로 바꾸기 전에 처리해야할 명령을 먼저 수행하는 것
- 다양한 라이브러리를 작업중인 소스파일에서 사용할 수 있도록 헤더 파일을 포함(
#include<stdio.h>
) - # 을 전처리 지시자라 함. 그리고 컴파일러가 #을 볼때 지금 기계어로 바꾸지말고 이를 먼저 처리해야한다고 인식하는 것.
- stdio.h라는 파일은 devC++이라는 컴파일러를 설치했을때, 그 컴파일러가 저장되어있는 폴더에 include라는 폴더에 stdio.h라는 헤더 파일이 존재한다. stdio.h이외에도 많이 있다.
- 다양한 라이브러리를 작업중인 소스파일에서 사용할 수 있도록 헤더 파일을 포함(
- 우리눈에는 아무것도 보이지 않으나 내부적으로 이 stdio.h라는 헤더파일을 소스코드에 포함시키고 그 후에 이들을 기계어로 바꿔주는 역할을 한다.
printf 함수
여러 개의 다양한 데이터 타입을 형식화 시켜 출력하는 함수
- 변수는 저장공간에 값들이 들어가있는데, 각각의 데이터 타입에 맞는 형식 지정자를 사용해서 출력해야 한다.
scanf 함수
여러 개의 다양한 데이터 타입을 한번에 입력받을 수 있는 함수
- 입력할 데이터가 저장될 변수를 먼저 선언해야 한다. 그 후 scanf를 이용.
- &는 주소 연산자(adress operator)
예제 프로그램
마일(mile)을 킬로미터(kilometer)로 변환
- 이 문제를 풀기 위해서는 seudo code처럼 알고리즘을 일단 짜야 한다.
#include <stdio.h> /* printf, scanf 함수원형이 들어있다.(전처리) */
int main(void) {
double miles, kilometer;
/* 1. 마일(miles) 데이터 입력 */
printf("Enter the distance in miles> ");
scanf("%lf", &miles);
/* 2. 마일을 킬로미터로 변환 */
kilometer = 1.609 * miles;
/* 3. 킬로미터 데이터 출력 */
printf("That equals %f kilometers. ¥n", kilometer);
return 0;
}
반응형
'컴퓨터공학입문' 카테고리의 다른 글
3 - 2 함수와 매개변수 (0) | 2019.08.28 |
---|---|
3 - 1 사용자 정의 함수 (0) | 2019.08.28 |
2 - 3 데이터 타입(data types) (0) | 2019.08.25 |
2 - 2 변수와 상수 (0) | 2019.08.25 |
2 - 1 C언어 구조 (0) | 2019.08.25 |