출처 : 클릭
레지스터 변수(Register variable)는 프로세서의 레지스터에서 처리되는 변수를 말합니다.
레지스터는 CPU 안에 있는 메모리로써, 기계어 한 두개 수준에서 직접 처리가 되므로 프로그램의 수행 속도를 향상시킬 수 있습니다.
따라서 프로그램의 수행에서 가장 영향을 주는 변수를 레지스터 변수로 선언하여 사용하면 프로그램 속도를 비약적으로 향상시킬 수 있는 경우가 있습니다.
하지만 register를 붙인다고 꼭 레지스터 변수로 선언되는 것은 아닙니다.
경우에 따라서는 남는 레지스터가 없을 수도 있으므로 여기서 말하는 레지스터는 컴파일러에게 반드시 그렇게 선언하라고 요구하는 의미보다는,
"가능하면 레지스터로 처리하라" 는 정도의 약한 의미에 불과합니다.
레지스터 변수를 선언하려면 변수를 선언할 때 앞에 register를 붙이면 됩니다.
레지스터 변수 선언은 지역 변수(Local variable)로만 선언할 수 있고 전역 변수(Global Variable)로는 선언할 수 없습니다.
register int k;
의 경우는 k라는 정수형 변수를 가능하면 레지스터 변수로 선언하라는 뜻이 되겠네요.
'About Programing > 03. Tip' 카테고리의 다른 글
C#에서 C++의 CString 값 전달해 주기 (2) | 2011.11.08 |
---|---|
RegQueryValueEx 함수 (0) | 2010.05.23 |
[MFC] 다른이름으로 저장하기 창 생성 (0) | 2010.04.22 |
외부 프로그램 실행 방법 (0) | 2010.04.21 |
MFC MDI에서 Child Window를 최대화로 시작하기 (0) | 2010.04.19 |