함수

함수의 종류

LIBRARY 함수. USER DEFINE 함수 가 있다.

LIBRARY 함수

c언어의 컴파일러를 만든 회사에서 기본적인 기능을 갖추어 제공하는 함수를 말한다.

#include <라이브러리명> 을 통하여 프로그램에 삽입한다.

userdefine 함수

사용자가 직접 정의한 함수를 의미한다.

.c파일에서 직접 정의하여 사용하여도 되며

#include "헤더파일명" 을 통하여 삽입 가능하다.

코딩의 방법

1.내가 말로 쓸 수 있어야한다.

정확히 이해를 하여 누구한테나 설명할 수 있어야한다.

2.그림으로 나타낼 수 있어야한다.(chart)

그림으로 나타내는 방법은 대표적으로 두가지 방법이 있다.

-flow chart 방식

1번과정에서 말로 설명한 과정을 순차별로 써준다.

물흐르듯 프로그램의 과정을 나열한 것이다.

<위키비디아 참고자료>

-ns-chart 방식

flow chart의 단점인 산만함. 표준형이 지정되지않음. 을 보완한 방식이다.

3가지 기본구조를 갖으며 화살표가 없다.

둘의 차이를 다음과같이 한눈에 확인할 수 있다.

<한글닷컴 > ns차트 배우기 참조>

3.변수와 함수를 구성한다.

변수는 변수선언 규칙에 맞추어서, 함수는 기능에 맞추어 구성한다!

문장의 종류

전처리 지시문

#include #define #pragma 등으로써 컴파일이 실행되기 전에 전처리기가 미리 처리하는 과정이다. 미리 처리하는 이유는 c언어는 위에서 부터 순차적으로 실행되는 언어이기 때문에 사용자가 입력한 코드를 인식하기 위해서는 미리 처리해 주어야 한다.

이러한 전처리를 선행처리라고도 불린다.

  • #include

컴파일러를 제공하는 메이커에서 제공하는 헤더파일은 <>에 넣는다.

사용자정의 헤더파일은 ""에 넣는다. 사용자 정의 헤더파일에는 사용자 정의 함수 선언부, 매크로 상수 및 매크로 함수 선언부 구조체,공용체 등 데이터형의 선언부. 등이 들어간다.

  • #define

매크로를 정의하여준다.

정의
#define 상수명 확장문자열

예제
#define m 200

이런식으로 사용하는데 이는 프로그램을 읽기쉽게하고 유지보수에 용이하다. 또한 빠르다.

  • pragma once

헤더파일의 중첩 include를 예방한다.

  • pragma warining

    정의 pragma warning(disable:n)

    해당번호 n의 경고를 비활성화 시킨다.

프로그램의 실행 과정

일단 프로그래머가 원시파일을 작성하여준다.

전처리기가 전처리해주어야할 작업진행 (파일삽입)

컴파일러가 이를 기계어로 번역함

(object file 생성)

이 기계어코드를 이제 또 실행시켜야 한다.

이를 위해서는 start_up_code,library routine을 이용

start_up_code

os가 제공하는것으로 os로부터 사용할 메모리 영역을 받은후 각종 필요 버퍼에 할당받는다.

그리고 main을 부른다.

library routine

library 함수의 기계어 코드가 저장되어 있다.

+ Recent posts