কম্পিউটার টিউটোরিয়াল

সি-এ গ্লোবাল ও স্ট্যাটিক ভেরিয়েবল ইনিশিয়ালাইজেশন


সি ভাষায় গ্লোবাল এবং স্ট্যাটিক উভয় ভেরিয়েবলই কনস্ট্যান্ট মান দিয়ে ইনিশিয়ালাইজ করা আবশ্যক। কারণ এই ভেরিয়েবলগুলোর মান প্রোগ্রাম এক্সিকিউশন শুরু হওয়ার আগে জানা দরকার। যদি গ্লোবাল ও স্ট্যাটিক ভেরিয়েবলগুলোর জন্য কনস্ট্যান্ট মান প্রদান না করা হয়, তবে এরর জেনারেট হবে।

নিচে গ্লোবাল ও স্ট্যাটিক ভেরিয়েবল ইনিশিয়ালাইজেশনের উদাহরণ দেওয়া হলো।

উদাহরণ

#include <stdio.h>
int a = 5;
static int b = 10;
int main() {
    printf("The value of global variable a : %d", a);
    printf("\nThe value of global static variable b : %d", b);
    return 0;
}

আউটপুট

The value of global variable a : 5
The value of global static variable b : 10

এখন উপরের প্রোগ্রামটি বুঝে নিই।

গ্লোবাল ভেরিয়েবল a-র মান ৫ এবং স্ট্যাটিক ভেরিয়েবল b-র মান ১০। তাই প্রোগ্রামটি সঠিকভাবে কাজ করছে।

যদি কনস্ট্যান্ট ব্যবহার না করে গ্লোবাল ও স্ট্যাটিক ভেরিয়েবল ইনিশিয়ালাইজ করা হয়, তবে এরর হবে। নিচে এরর প্রদর্শনের একটি প্রোগ্রাম দেওয়া হলো।

#include <stdio.h>
int func() {
    return 25;
}
int main() {
    static int a = func();
    printf("%d ", a);
}

উপরের প্রোগ্রামটি initializer element is not constant এরর দেবে। সুতরাং গ্লোবাল ও স্ট্যাটিক ভেরিয়েবল শুধুমাত্র কনস্ট্যান্ট দিয়ে ইনিশিয়ালাইজ করা উচিত।


  1. পাইথন গ্লোবাল এবং লোকাল ভ্যারিয়েবল গাইড

  2. জাভাস্ক্রিপ্টে গ্লোবাল ভেরিয়েবল কীভাবে এবং কেন এড়াতে হয়?

  3. অ্যান্ড্রয়েড স্টুডিওতে স্ট্যাটিক ভেরিয়েবল কোথায় এবং কীভাবে ব্যবহার করবেন

  4. ব্যাশ ভেরিয়েবল মাস্টার করুন: গ্লোবাল ও লোকাল ব্যবহারের ৬টি প্র্যাক্টিক্যাল উদাহরণ