C প্রোগ্রামিং ভাষায় চারটি স্টোরেজ ক্লাস আছে, যেগুলো হলো −
- auto
- extern
- static
- register
স্ট্যাটিক ভেরিয়েবল
কিওয়ার্ড হলো static।
স্কোপ
স্ট্যাটিক ভেরিয়েবলের স্কোপ হলো এটি প্রোগ্রাম চলাকালীন এবং ফাংশন কলগুলোর মাঝপথে এর মান রিটেইন করে।
স্ট্যাটিক ভেরিয়েবলগুলো শুধু একবার ইনিশিয়ালাইজ হয়।
ডিফল্ট ভ্যালু হলো শূন্য।
উদাহরণ ১
স্ট্যাটিক স্টোরেজ ক্লাস এর জন্য C প্রোগ্রাম নিচে দেওয়া হলো −
#includemain ( ){ inc(); inc(); inc(); } inc ( ){ static int i = 1; printf("%d", i); i++; }
আউটপুট
আউটপুট নিচে দেওয়া হলো −
1 2 3
উদাহরণ ২
স্ট্যাটিক স্টোরেজ ক্লাস এর জন্য আরেকটি C প্রোগ্রাম নিচে দেওয়া হলো −
#includemain ( ){ inc(); inc(); inc(); } inc ( ){ auto int i = 1; printf("%d", i); i++; }
আউটপুট
আউটপুট নিচে দেওয়া হলো −
1 1 1
উদাহরণ ৩
স্ট্যাটিক স্টোরেজ ক্লাস এর জন্য তৃতীয় উদাহরণ C প্রোগ্রাম নিচে দেওয়া হলো −
#include// ফাংশন ঘোষণা void function(); int main(){ function(); function(); return 0; } // ফাংশন ডেফিনিশন void function(){ static int value = 1; // স্ট্যাটিক ভেরিয়েবল ঘোষণা printf("\nvalue = %d", value); value++; }
আউটপুট
আউটপুট নিচে দেওয়া হলো −
value = 1 value = 2