சி இல் சேமிப்பு வகுப்புகள்: ஆட்டோ, வெளி, நிலையான, சி இல் பதிவு வகுப்பு

C இல் சேமிப்பு வகுப்பு என்றால் என்ன?

ஒரு சேமிப்பக வகுப்பு ஒரு மாறியின் தெரிவுநிலையையும் இருப்பிடத்தையும் குறிக்கிறது. குறியீட்டின் எந்தப் பகுதியிலிருந்து நாம் ஒரு மாறியை அணுக முடியும் என்பதை இது கூறுகிறது. C இல் ஒரு சேமிப்பு வகுப்பு பின்வரும் விஷயங்களை விவரிக்க பயன்படுத்தப்படுகிறது:

  • மாறி நோக்கம்.
  • மாறி சேமிக்கப்படும் இடம்.
  • ஒரு மாறியின் ஆரம்ப மதிப்பு.
  • ஒரு மாறி ஒரு வாழ்நாள்.
  • ஒரு மாறியை யார் அணுக முடியும்?

இவ்வாறு ஒரு மாறி பற்றிய தகவலைக் குறிக்க ஒரு சேமிப்பு வகுப்பு பயன்படுத்தப்படுகிறது.

குறிப்பு: ஒரு மாறி ஒரு தரவு வகை, அதன் மதிப்புடன் மட்டுமல்லாமல் ஒரு சேமிப்பு வகுப்போடு தொடர்புடையது.

மொத்தம் நான்கு வகையான நிலையான சேமிப்பு வகுப்புகள் உள்ளன. கீழே உள்ள அட்டவணை C இல் உள்ள சேமிப்பு வகுப்புகளைக் குறிக்கிறது.

சேமிப்பு வகுப்பு நோக்கம்
ஆட்டோ இது இயல்புநிலை சேமிப்பக வகுப்பு.
வெளி இது உலகளாவிய மாறி.
நிலையான இது செயல்பாட்டு அழைப்பிற்கு கட்டுப்பாடு மாற்றப்பட்டாலும் ஒரு மதிப்பைத் திருப்பித் தரக்கூடிய ஒரு உள்ளூர் மாறி ஆகும்.
பதிவு இது ஒரு பதிவேட்டில் சேமிக்கப்படும் ஒரு மாறி.

இந்த சி டுடோரியலில், பல்வேறு வகையான சேமிப்பு வகுப்புகளை C இல் எடுத்துக்காட்டுகளுடன் கற்றுக்கொள்வீர்கள்-

C இல் ஆட்டோ சேமிப்பு வகுப்பு

தானியங்கி சேமிப்பக வகுப்பைப் பயன்படுத்தி வரையறுக்கப்பட்ட மாறிகள் உள்ளூர் மாறிகள் என்று அழைக்கப்படுகின்றன. ஆட்டோ என்பது தானியங்கி சேமிப்பு வகுப்பைக் குறிக்கிறது. ஒரு மாறுபாடு வெளிப்படையாக குறிப்பிடப்படாவிட்டால் இயல்பாக தானியங்கி சேமிப்பக வகுப்பில் உள்ளது.

ஒரு தானியங்கி மாறியின் நோக்கம் குறிப்பிட்ட தொகுதியுடன் மட்டுமே வரையறுக்கப்பட்டுள்ளது. கட்டுப்பாடு தொகுதிக்கு வெளியே சென்றவுடன், அணுகல் அழிக்கப்படும். இதன் பொருள் தானியங்கி மாறி அறிவிக்கப்படும் தொகுதி மட்டுமே அதை அணுக முடியும்.

ஆட்டோ சேமிப்பு வகுப்பை வரையறுக்க ஒரு முக்கிய சொல் ஆட்டோ பயன்படுத்தப்படுகிறது. இயல்பாக, ஒரு தானியங்கி மாறி ஒரு குப்பை மதிப்பைக் கொண்டுள்ளது. | _+_ |

கீழே உள்ள நிரல் இரண்டு உள்ளூர் மாறிகள் கொண்ட ஒரு செயல்பாட்டை வரையறுக்கிறது | _+_ |

ஒருவருக்கொருவர் சுயாதீனமாக இருக்கும் ஒவ்வொரு தொகுதி குறியீடுகளிலும் தானியங்கி மாறிகளுக்கான நோக்கம் நிலை 'தெரிவுநிலை நிலை' காட்டும் மற்றொரு நிரலை நாங்கள் எடுத்துக்கொள்கிறோம்: | _+_ |

வெளியீடு: | _+_ |

C இல் வெளிப்புற சேமிப்பு வகுப்பு

வெளிப்புற சேமிப்பு வகுப்பிற்கான வெளிப்புற நிலைகள். இரண்டு அல்லது அதற்கு மேற்பட்ட கோப்புகளுக்கு இடையில் பகிரப்படும் உலகளாவிய செயல்பாடுகள் அல்லது மாறிகள் இருக்கும்போது வெளிப்புற சேமிப்பு வகுப்பு பயன்படுத்தப்படுகிறது.

முக்கிய சொல் வெளி அசல் கோப்பில் ஏற்கனவே வரையறுக்கப்பட்ட மாறி அல்லது செயல்பாட்டின் குறிப்பை வழங்க மற்றொரு கோப்பில் உலகளாவிய மாறி அல்லது செயல்பாட்டை அறிவிக்கப் பயன்படுகிறது.

வெளிப்புற முக்கிய வார்த்தையைப் பயன்படுத்தி வரையறுக்கப்பட்ட மாறிகள் உலகளாவிய மாறிகள் என்று அழைக்கப்படுகின்றன. இந்த மாறிகள் நிரல் முழுவதும் அணுகக்கூடியவை. வெளிப்புற மாறியை துவக்க முடியாது என்பதை கவனிக்கவும் அது ஏற்கனவே அசல் கோப்பில் வரையறுக்கப்பட்டுள்ளது. | _+_ |

முதல் கோப்பு: main.c

Example, auto int age; 

இரண்டாவது கோப்பு: original.c

 int add(void) { int a=13; auto int b=48; return a+b;} 

முடிவு: | _+_ |

மேலே உள்ள குறியீட்டை தொகுத்து இயக்க, கீழே உள்ள படிகளைப் பின்பற்றவும்

படி 1) புதிய திட்டத்தை உருவாக்க,

  1. கன்சோல் பயன்பாட்டைத் தேர்ந்தெடுக்கவும்
  2. செல் என்பதைக் கிளிக் செய்யவும்

படி 2) C ஐத் தேர்ந்தெடுத்து அடுத்து என்பதைக் கிளிக் செய்யவும்

படி 3) அடுத்து என்பதைக் கிளிக் செய்யவும்

படி 4) விவரங்களை உள்ளிட்டு அடுத்து என்பதைக் கிளிக் செய்யவும்

படி 5) முடி என்பதைக் கிளிக் செய்யவும்

படி 6) Main.c கோப்பில் முந்தைய நிரலில் காட்டப்பட்டுள்ளபடி முக்கிய குறியீட்டை வைத்து சேமிக்கவும்

படி 7) ஒரு புதிய சி கோப்பை உருவாக்கவும் [கோப்பு -> புதிய -> வெற்று கோப்பு, சேமி (அசல். சி) மற்றும் உரையாடல் பெட்டியில் 'சரி' கிளிக் செய்வதன் மூலம் தற்போதைய திட்டத்தில் சேர்க்கவும்.

படி 8) பிரதான () செயல்பாடு இல்லாமல் முந்தைய எடுத்துக்காட்டில் காட்டப்பட்டுள்ள ஒரிஜினல்.சி கோப்பின் சி குறியீட்டை வைத்து சேமிக்கவும்.

படி 9) உங்கள் திட்டத்தை உருவாக்கி இயக்கவும். முடிவு அடுத்த படத்தில் காட்டப்பட்டுள்ளது

C இல் நிலையான சேமிப்பு வகுப்பு

நிலையான மாறிகள் உள்ளூர் நிலையான மாறிகள் என செயல்பாடு/ கோப்புக்குள் பயன்படுத்தப்படுகின்றன. அவற்றை ஏ ஆகவும் பயன்படுத்தலாம் உலக மாறி

  • நிலையான உள்ளூர் மாறி என்பது ஒரு உள்ளூர் மாறி ஆகும், இது செயல்பாட்டு அழைப்புகள் அல்லது தொகுதிக்கு இடையில் அதன் மதிப்பைத் தக்கவைத்து சேமித்து வைக்கிறது மற்றும் அது வரையறுக்கப்பட்ட செயல்பாடு அல்லது தொகுதிக்கு மட்டுமே தெரியும்.
  • நிலையான உலகளாவிய மாறிகள் உலகளாவிய மாறிகள் தெரியும் அது அறிவிக்கப்பட்ட கோப்புக்கு மட்டுமே.
 #include int main( ) { auto int j = 1; { auto int j= 2; { auto int j = 3; printf ( ' %d ', j); } printf ( '	 %d ',j); } printf( '%d
', j);} 

நிலையான மாறியானது இயல்புநிலை ஆரம்ப மதிப்பு பூஜ்ஜியத்தைக் கொண்டுள்ளது மற்றும் அதன் வாழ்நாளில் ஒரு முறை மட்டுமே துவக்கப்படுகிறது என்பதை நினைவில் கொள்ளுங்கள். | _+_ |

முடிவு: | _+_ |

உலகளாவிய மாறிகள் கோப்பு முழுவதும் அணுகக்கூடியவை, அதே சமயம் நிலையான மாறிகள் குறியீட்டின் குறிப்பிட்ட பகுதிக்கு மட்டுமே அணுகக்கூடியவை.

ஒரு நிலையான மாறியின் ஆயுட்காலம் முழு நிரல் குறியீட்டில் உள்ளது. நிலையான குறிச்சொல்லைப் பயன்படுத்தி அறிவிக்கப்படும் அல்லது துவக்கப்படும் ஒரு மாறி எப்போதும் பூஜ்ஜியத்தை இயல்புநிலை மதிப்பாகக் கொண்டிருக்கும்.

C இல் சேமிப்பு வகுப்பை பதிவு செய்யவும்

இந்த மாறிகள் விரைவாக அணுகுவதற்கு RAM க்கு பதிலாக CPU பதிவுகளில் செயல்பாடுகளை அல்லது தொகுதிகளுக்குள் உள்ளூர் மாறிகள் சேமிக்க விரும்பும் போது நீங்கள் பதிவு சேமிப்பு வகுப்பைப் பயன்படுத்தலாம். உதாரணமாக, 'கவுண்டர்கள்' ஒரு நல்ல வேட்பாளர் பதிவேட்டில் சேமிக்கப்படும். | _+_ |

முக்கிய சொல் பதிவு ஒரு பதிவு சேமிப்பு வகுப்பை அறிவிக்க பயன்படுகிறது. பதிவு சேமிப்பு வகுப்பைப் பயன்படுத்தி அறிவிக்கப்பட்ட மாறிகள் நிரல் முழுவதும் ஆயுட்காலம் கொண்டது.

இது தானியங்கி சேமிப்பு வகுப்பைப் போன்றது. மாறி குறிப்பிட்ட தொகுதிக்கு மட்டுமே. ஒரே வித்தியாசம் என்னவென்றால், பதிவு சேமிப்பக வகுப்பைப் பயன்படுத்தி அறிவிக்கப்பட்ட மாறிகள் நினைவகத்திற்கு பதிலாக CPU பதிவுகளுக்குள் சேமிக்கப்படுகின்றன. பதிவு முக்கிய நினைவகத்தை விட வேகமான அணுகலைக் கொண்டுள்ளது.

பதிவு சேமிப்பு வகுப்பைப் பயன்படுத்தி அறிவிக்கப்பட்ட மாறிகள் இயல்புநிலை மதிப்பைக் கொண்டிருக்கவில்லை. இந்த மாறிகள் பெரும்பாலும் ஒரு திட்டத்தின் தொடக்கத்தில் அறிவிக்கப்படுகின்றன. | _+_ |

வெளியீடு: | _+_ |

அடுத்த அட்டவணை பொதுவாக சி நிரலாக்கத்தில் பயன்படுத்தப்படும் ஒவ்வொரு சேமிப்பக வகுப்பின் முக்கிய அம்சங்களை சுருக்கமாகக் கூறுகிறது

சேமிப்பு வகுப்பு பிரகடனம் சேமிப்பு இயல்புநிலை ஆரம்ப மதிப்பு வாய்ப்பு வாழ்நாள் முழுவதும்
ஆட்டோ ஒரு செயல்பாடு/தொகுதிக்குள்நினைவுகணிக்க முடியாததுசெயல்பாடு/தொகுதிக்குள்செயல்பாடு/தொகுதிக்குள்
பதிவு ஒரு செயல்பாடு/தொகுதிக்குள்CPU பதிவுகள்குப்பைசெயல்பாடு/தொகுதிக்குள்செயல்பாடு/தொகுதிக்குள்
வெளி அனைத்து செயல்பாடுகளுக்கும் வெளியேநினைவுபூஜ்யம்மாறி மற்றும் வெளிப்புறமாக அறிவிக்கப்பட்ட கோப்பு மற்றும் பிற கோப்புகள் முழுவதும்நிரல் இயக்க நேரம்
நிலையான (உள்ளூர்) ஒரு செயல்பாடு/தொகுதிக்குள்நினைவுபூஜ்யம்செயல்பாடு/தொகுதிக்குள்நிரல் இயக்க நேரம்
நிலையான (உலகளாவிய) அனைத்து செயல்பாடுகளுக்கும் வெளியேநினைவுபூஜ்யம்உலகளாவியநிரல் இயக்க நேரம்

சுருக்கம்

இந்த டுடோரியலில் நாம் C இல் சேமிப்பு வகுப்புகளைப் பற்றி விவாதித்தோம்:

  • C இல் ஒரு சேமிப்பக வகுப்பு ஒரு மாறி பற்றிய கூடுதல் தகவலைக் குறிக்கப் பயன்படுகிறது.
  • சேமிப்பக வர்க்கம் ஒரு மாறியின் நோக்கம் மற்றும் ஆயுட்காலம் ஆகியவற்றைக் குறிக்கிறது.
  • இது ஒரு மாறி மற்றும் யார் எங்கிருந்து அணுக முடியும் என்று சொல்கிறது?
  • ஆட்டோ, எக்ஸ்டெர்ன், ரெஜிஸ்டர், ஸ்டாடிக் ஆகியவை சி ப்ரோகிராமில் உள்ள நான்கு வெவ்வேறு சேமிப்பு வகுப்புகள்.
  • மாறிகள், செயல்பாடுகள் மற்றும் அளவுருக்களை வரையறுக்க சி மொழியில் ஒரு சேமிப்பு வகுப்பு விவரக்குறிப்பு பயன்படுத்தப்படுகிறது.
  • ஒரு தொகுதி அல்லது செயல்பாட்டிற்குள் வரையறுக்கப்பட்ட உள்ளூர் மாறிக்கு ஆட்டோ பயன்படுத்தப்படுகிறது
  • விரைவான அணுகலுக்கான நினைவக இருப்பிடத்தை CPU பதிவேடுகளில் மாற்றுவதற்கு பதிவு பயன்படுத்தப்படுகிறது.
  • உலகளாவிய மற்றும் உள்ளூர் மாறிகள் இரண்டிற்கும் நிலையானது பயன்படுத்தப்படுகிறது. ஒவ்வொன்றும் ஒரு சி நிரலுக்குள் அதன் பயன்பாட்டு வழக்கு உள்ளது.
  • சி திட்டக் கோப்புகளுக்கு இடையில் தரவு பகிர்வுக்கு வெளிப்புறமானது பயன்படுத்தப்படுகிறது.