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

সি-এ ভেরিয়েবল স্কোপিং (How are variables scoped in C)


এখানে আমরা দেখব সি ভেরিয়েবলগুলো কীভাবে স্কোপ করা হয়। সি-এ ভেরিয়েবলগুলো সবসময় স্ট্যাটিক্যালি স্কোপড (statically scoped)। একটি ভেরিয়েবলের বাইন্ডিং প্রোগ্রাম টেক্সট দ্বারা নির্ধারিত হয়। এগুলো রানটাইম ফাংশন কল স্ট্যাক থেকে স্বতন্ত্র।

ধারণা পেতে একটি উদাহরণ দেখি।

উদাহরণ

#include <stdio.h>

int x = 0;

int my_function() {
    return x;
}

int my_function2() {
    int x = 1;
    return my_function();
}

int main() {
    printf("The value is: %d\n", my_function2());
}

আউটপুট

The value is: 0

ফলাফল ০। কারণ my_function() যা রিটার্ন করে তা সেটি কোন ফাংশন কল করছে তার ওপর নির্ভর করে না। এটি ফাংশন সবসময় গ্লোবাল ভেরিয়েবল x-এর মান রিটার্ন করে।

  1. জাভাস্ক্রিপ্টে ভেরিয়েবলগুলো কোথায় মেমরি অ্যালোকেট হয়?

  2. জাভাস্ক্রিপ্ট ভেরিয়েবলগুলো কোথায় সংরক্ষিত হয়?

  3. জাভাস্ক্রিপ্টে ব্লক-স্কোপড ভেরিয়েবল ডিক্লেয়ার করার পদ্ধতি

  4. অ্যান্ড্রয়েডে গ্লোবাল ভেরিয়েবল ঘোষণা করার পদ্ধতি