2013년 1월 26일 토요일

부록 1 // 2. 전처리기, 3 static 키워드, 4.sizeof 키워드

2. 전처리기 지시자

#include <stdio.h> 이게 전처리기 지시자

전처리기 헤더 파일의 내용을 파일 안에 넣는거~
언제나 소스코드 제일 앞에 오고 #으로 시작

#define 는 매크로 만드는 지시자
매크로는 프로그램을 실행하는 동안 값이 바뀌지 않기 때문에 변수가 아니고
매크로는 프로그램이 컴파일 되기 전에 바뀜.

3. static 키워드

예제)

int count = 0;
int counter()
{
     return ++count; //호출될 때 마다 값을 증가 시킴
}

이 코드의 문제는 count라는 전역 변수를 사용함.
어떤 함수도 사용해서 값을 바꿀 수가 있음.
전역 변수를 특정 함수나 파일만 사용할 수 있는 변수를 만드는 법~!

int counter()
{
     static int count = 0;
     return ++count;
}

static 키워드를 사용하면 변수를 전역 메모리에 보관하고 다른 함수가 접근하면 에러 발생

함수 앞에 static를 사용하면 같은 소스코드 안에 있는 코드만 이 함수를 사용가능


1줄 요약: static 키워드는 코드의 범위를 통제~

4. sizeof  키워드

어떤 범위를 알고 싶을 때 사용.

예제)

#include <stdio.h>
#include <limits.h>

int main()
{
   printf("이 컴퓨터에서 int 형은 %lu바이트를 차지 합니다. \n", sizeof(int));
   printf("그리고 int형은  %i에서 %i까지 저장할 수 있습니다. \n", INT_MIN, INT_MAX);
   printf("그리고 short형은  %i에서 %i까지 저장할 수 있습니다. \n", SHRT_MIN, SHRT_MAX);
   return 0;
}

매크로 이름은 INT(int), LONG(long), CHAR(char), FLT(float), DBL(double)
에 _MAX 나 _MIN을 붙이면 됨.


















댓글 없음:

댓글 쓰기