কম্পিউটার

C-তে স্টোরেজ ক্লাস


C ভাষায়, ভেরিয়েবল এবং ফাংশনের বৈশিষ্ট্যগুলি স্টোরেজ ক্লাস দ্বারা বর্ণনা করা হয় যেমন q ভেরিয়েবল বা ফাংশনের দৃশ্যমানতা এবং সুযোগ।

সি ভাষায় চার ধরনের স্টোরেজ ক্লাস রয়েছে:স্বয়ংক্রিয় ভেরিয়েবল, এক্সটার্নাল ভেরিয়েবল, স্ট্যাটিক ভেরিয়েবল এবং রেজিস্টার ভেরিয়েবল।

স্বয়ংক্রিয়

অটো স্টোরেজ ক্লাস হল সমস্ত স্থানীয় ভেরিয়েবলের জন্য ডিফল্ট স্টোরেজ ক্লাস। ফাংশন কল করা হলে এটি তৈরি হয়। যখন ফাংশন কার্যকর করা হয়, ভেরিয়েবলগুলি স্বয়ংক্রিয়ভাবে ধ্বংস হয়ে যায়।

এগুলি স্থানীয় ভেরিয়েবল হিসাবেও পরিচিত কারণ তারা একটি ফাংশনের স্থানীয়। ডিফল্টরূপে, তারা কম্পাইলার দ্বারা আবর্জনা মান নির্ধারণ করা হয়।

স্কোপ - স্বয়ংক্রিয় ভেরিয়েবল হল ফাংশন ব্লকের স্থানীয় ভেরিয়েবল।

ডিফল্ট মান − আবর্জনা মান হল ডিফল্ট প্রাথমিক মান।

জীবনকাল - স্বয়ংক্রিয় ভেরিয়েবলের লাইফটাইম যে ব্লকে এটি সংজ্ঞায়িত করা হয়েছে তার দ্বারা আবদ্ধ।

এখানে সি ল্যাঙ্গুয়েজে অটো ভেরিয়েবলের একটি উদাহরণ দেওয়া হল,

উদাহরণ

#include <stdio.h>
int main() {
   auto int a = 28;
   int b = 8;
   printf("The value of auto variable : %d\n", a);
   printf("The sun of auto variable & integer variable : %d", (a+b));
   return 0;
}

আউটপুট

The value of auto variable : 28
The sun of auto variable & integer variable : 36

বহিরাগত

বাহ্যিক ভেরিয়েবলগুলিকে গ্লোবাল ভেরিয়েবলও বলা হয়। এই ভেরিয়েবলগুলি ফাংশনের বাইরে সংজ্ঞায়িত করা হয়। এই ভেরিয়েবলগুলি সমগ্র ফাংশন সম্পাদন জুড়ে বিশ্বব্যাপী উপলব্ধ। গ্লোবাল ভেরিয়েবলের মান ফাংশন দ্বারা পরিবর্তন করা যেতে পারে।

স্কোপ - তারা কোন ফাংশন দ্বারা আবদ্ধ নয়. তারা প্রোগ্রামের সর্বত্র রয়েছে অর্থাৎ বিশ্বব্যাপী।

ডিফল্ট মান − গ্লোবাল ভেরিয়েবলের ডিফল্ট প্রারম্ভিক মান হল জিরো।

জীবনকাল - প্রোগ্রামটি সম্পাদনের শেষ অবধি।

এখানে সি ল্যাঙ্গুয়েজে এক্সটার্ন ভেরিয়েবলের একটি উদাহরণ দেওয়া হল,

উদাহরণ

#include <stdio.h>
extern int x = 32;
int b = 8;
int main() {
   auto int a = 28;
   extern int b;
   printf("The value of auto variable : %d\n", a);
   printf("The value of extern variables x and b : %d,%d\n",x,b);
   x = 15;
   printf("The value of modified extern variable x : %d\n",x);
   return 0;
}

আউটপুট

The value of auto variable : 28
The value of extern variables x and b : 32,8
The value of modified extern variable x : 15

স্থির

স্ট্যাটিক ভেরিয়েবল শুধুমাত্র একবার আরম্ভ করা হয়. কম্পাইলার প্রোগ্রামের শেষ পর্যন্ত ভেরিয়েবলকে ধরে রাখে। স্ট্যাটিক ভেরিয়েবল ফাংশনের ভিতরে বা বাইরে সংজ্ঞায়িত করা যেতে পারে।

স্কোপ - তারা ব্লকের স্থানীয়।

ডিফল্ট মান − ডিফল্ট প্রারম্ভিক মান হল শূন্য৷

জীবনকাল - প্রোগ্রামটি সম্পাদনের শেষ অবধি।

এখানে C ভাষায় স্ট্যাটিক ভেরিয়েবলের একটি উদাহরণ দেওয়া হল,

উদাহরণ

#include <stdio.h>
int main() {
   auto int a = -28;
   static int b = 8;
   printf("The value of auto variable : %d\n", a);
   printf("The value of static variable b : %d\n",b);
   if(a!=0)
   printf("The sum of static variable and auto variable : %d\n",(b+a));
   return 0;
}

আউটপুট

The value of auto variable : -28
The value of static variable b : 8
The sum of static variable and auto variable : -20

রেজিস্টার করুন

রেজিস্টার ভেরিয়েবল কম্পাইলারকে মেমরির পরিবর্তে CPU রেজিস্টারে ভেরিয়েবল সংরক্ষণ করতে বলে। প্রায়শই ব্যবহৃত ভেরিয়েবলগুলি রেজিস্টারে রাখা হয় এবং তাদের দ্রুত অ্যাক্সেসযোগ্যতা রয়েছে। আমরা কখনই এই ভেরিয়েবলের ঠিকানা পেতে পারি না।

স্কোপ - তারা ফাংশনের স্থানীয়।

ডিফল্ট মান − ডিফল্ট প্রারম্ভিক মান হল আবর্জনা মান..

জীবনকাল - যে ব্লকে এটি সংজ্ঞায়িত করা হয়েছে সেটির সম্পাদনের শেষ পর্যন্ত।

এখানে C ভাষায় রেজিস্টার ভেরিয়েবলের একটি উদাহরণ দেওয়া হল,

উদাহরণ

#include <stdio.h>
int main() {
   register char x = 'S';
   register int a = 10;
   auto int b = 8;
   printf("The value of register variable b : %c\n",x);
   printf("The sum of auto and register variable : %d",(a+b));
   return 0;
}

আউটপুট

The value of register variable b : S
The sum of auto and register variable : 18

  1. সতর্কতা বাক্সে জাভাস্ক্রিপ্ট পরিবর্তনশীল মান কিভাবে প্রদর্শন করবেন?

  2. জাভাস্ক্রিপ্ট ভেরিয়েবলে একটি HTML H1 মান পাচ্ছেন?

  3. HTML5 লোকাল স্টোরেজে একটি কী বিদ্যমান কিনা তা পরীক্ষা করা হচ্ছে

  4. HTML DOM স্টোরেজ setItem() পদ্ধতি