변수의 영역 ¶
전역 변수 - 해당 파일 내에서 유효함 (외부 참조 가능), BSS 세그먼트의 공간 사용
지역 변수 - 해당 블럭 내에서 유효함
static 전역 변수 - 해당 파일 내에서 유효함 (외부 참조 불가능)
지역 변수 - 해당 블럭 내에서 유효함
static 전역 변수 - 해당 파일 내에서 유효함 (외부 참조 불가능)
변수의 기억 부류 지정 ¶
변수의 기억 장소 선택
register - CPU 레지스터를 변수로 할당
auto - 스택 공간을 변수로 할당
static - BSS 세그먼트의 공간을 변수로 할당
extern - 외부 변수 참조
auto - 스택 공간을 변수로 할당
static - BSS 세그먼트의 공간을 변수로 할당
extern - 외부 변수 참조
volatile 키워드 ¶
~cpp
#include <stdio.h>
#include <time.h>
void main()
{
	clock_t start, finish;
	double duration;
	start = clock();
	volatile int a = 10, b = 20, c;
	for(int i = 0 ; i < 1000000000 ; i++)
		c = a * b;
	finish = clock();
	duration = (double)(finish - start) / CLOCKS_PER_SEC;
	printf("%2.1f seconds\n", duration);
}













