มีสี่คลาสการจัดเก็บข้อมูลในภาษาการเขียนโปรแกรม C ซึ่งมีดังนี้ -
- อัตโนมัติ
- ภายนอก
- คงที่
- ลงทะเบียน
ลงทะเบียนตัวแปร
-
คีย์เวิร์ดคือ register.
-
ค่าตัวแปร Register จะถูกเก็บไว้ในการลงทะเบียน CPU แทนที่จะเป็นหน่วยความจำที่เก็บตัวแปรปกติ
-
รีจิสเตอร์เป็นหน่วยเก็บข้อมูลชั่วคราวใน CPU
-
ช่วยให้เข้าถึงการลงทะเบียนตัวแปรได้เร็วกว่าตัวแปรปกติ
ตัวอย่างที่ 1
ต่อไปนี้เป็นโปรแกรม C สำหรับ ลงทะเบียนคลาสพื้นที่เก็บข้อมูล −
#include<stdio.h>
main ( ){
register int i;
for (i=1; i<=5; i++)
printf ("%d ",i);
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
1 2 3 4 5
ตัวอย่างที่ 2
พิจารณาโปรแกรม C อื่นสำหรับ register storage class -
#include<stdio.h>
int main(){
register int a;
printf("%d",a); //prints default value of a =0
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
0
ตัวอย่างที่ 3
ต่อไปนี้เป็นโปรแกรม C ที่สามสำหรับคลาสการจัดเก็บแบบคงที่ -
#include<stdio.h>
int main(){
register int i = 10;
int *p;
//int *p = &i; //error occurred ,here we are trying to request address of register variable
printf("Value of i: %d", *p);
printf("Address of i: %u", p);
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
Error:add of reg var?