728x90
반응형
2023.1.5. 최초 작성
CPU에는 주기억장치인 메모리보다 훨씬 빠른 기억공간인 레지스터(register)가 있다.
일반 변수는 주기억장치를 할당받는데 레지스터 변수는 CPU 내에 레지스터를 할당받는다.
특정 변수가 굉장히 자주 사용하는 것이라면 속도 증가를 위해 레지스터 변수로 선언하는 것이 유리하다. 단, 레지스터 변수로 선언해도 무조건 레지스터를 할당받지는 못한다. 실행될 때 남는 레지스터가 있어야 한다. 만약 없다면 일반 변수처럼 주기억장치를 할당받는다.
아래 코드는 구구단 출력에서 레지스터 변수를 사용하였다.
#include <stdio.h>
void main() {
register int i, j;
for (i = 2; i <= 9; i++) {
for (j = 1; j <= 9; j++) {
printf("%d x %d = %d\n", i, j, i * j);
}
}
}
728x90
반응형
728x90
반응형
'프로그래밍 > C' 카테고리의 다른 글
C언어 함수 (0) | 2023.01.08 |
---|---|
외부 변수(extern)와 헤더파일 만들기 (0) | 2023.01.05 |
정수(int)의 크기가 넘치는 경우(정수 오버플로우) (1) | 2023.01.05 |
C언어 전역변수와 지역변수의 블록 범위 (0) | 2023.01.05 |
C언어 반복문 흐름제어(break, continue, return) (0) | 2023.01.05 |