함수
함수의 종류
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 함수의 기계어 코드가 저장되어 있다.
'언어 > c' 카테고리의 다른 글
차원_데이터와 자료형_형변환 (1) | 2018.01.29 |
---|---|
switch 문과 if문의 차이 (언제 switch를 쓰고 언제 if를 사용할까?) (0) | 2018.01.29 |
문자열이 scanf를 통하여 초기화 될시 남는 배열은 어떻게 될까? (0) | 2018.01.26 |
(예외처리)입력 상황에 따른 예외처리 (숫자에 문자가..? 문자에 숫자가..?) (0) | 2018.01.26 |
<c예외처리>scanf를 통하여 알아본 버퍼의 개념_getchar_flush_ (0) | 2018.01.26 |