به قسمتی از برنامه که برنامه نویس می تواند در آن حوزه متغیرهای خود را تعریف یا اعلان کند، scope گفته میشود.

به طور کلی سه محدوده یا scope برای تعریف یا اعلان متغیر وجود دارد:

  • داخل یک تابع یا یک بلوک که متغیرهای محلی (local variable) نامیده می شود.
  • بعنوان پارامترهای تابع که پارامترهای رسمی (formal parameters) نامیده میشود.
  • خارج از تمام توابع که متغیرهای سراسری (global variables) نامیده میشود.

توجه:

توابع و پارامترهای آنها را در فصل های بعدی به طور کامل توضیح خواهیم  داد. در اینجا قصد داریم در مورد متغیرهای محلی و سراسری صحبت کنیم.

متغیرهای محلی (local variable)

متغیر هایی که در داخل یک تابع یا یک حوزه اعلان میشوند متغیرهای محلی نامیده می شوند. این متغیر ها تنها در محدوده ای که تعریف شده اند (تابع یا محدوده) میتوانند استفاده شوند. متغیرهای محلی برای توابعی که خارج از آنها باشد قابل شناسایی نیستند. در اینجا مثالی برای استفاده از متغیرهای محلی درC++ خواهیم داشت:
 

#include 
using namespace std;

int main () {
   // Local variable declaration:
   int a, b;
   int c;

   // actual initialization
   a = 10;
   b = 20;
   c = a + b;

   cout << c;

   return 0;
}

C++

Copy

متغیرهای سراسری

متغیرهای سراسری در خارج از تمام توابع و به طور معمول در بالای برنامه تعریف می شود و مقدار خود را در تمام مدت برنامه حفظ خواهند کرد.
یک متغیر سراسری می تواند توسط هر تابعی قابل دسترسی باشد. به عبارت دیگر برای استفاده در تمام مدت برنامه بعد از اعلان در دسترس است. در اینجا مثالی برای استفاده از متغیر سراسری و محلی در زبان C++  ارائه خواهیم داد:
 

#include 
using namespace std;

// Global variable declaration:
int g;

int main () {
   // Local variable declaration:
   int a, b;

   // actual initialization
   a = 10;
   b = 20;
   g = a + b;

   cout << g;

   return 0;
}

C++

Copy

یک برنامه می تواند نامی یکسان و مشابه برای متغیر سراسری ومحلی داشته باشد. اما در نظر داشته باشید که متغیر محلی به متغیر سراسری اولیت دارد. برای مثال:
 

#include 
using namespace std;

// Global variable declaration:
int g = 20;

int main () {
   // Local variable declaration:
   int g = 10;

   cout << g;

   return 0;
}

C++

Copy

پس از کامپایل و اجرای کد بالا نتیجه زیر نمایش داده خواهد شد.

10


مقداردهی متغیرهای سراسری و محلی در C++

وقتی که یک متغیر محلی تعریف می شود توسط سیستم مقداردهی اولیه نمی شود و باید خودتان آن را مقدارهی کنید. اما متغیرهای سراسری به طور خودکار توسط سیستم، زمانی که آنها را تعریف می کنید مقداردهی اولیه میشوند.

در جدول زیر مقدار پیش فرضی که یک متغیر سراسری بر اساس نوع داده ای خود می گیرد را آورده ایم:

نوع دادهمقدار پیش فرض
int0
char'\0'
float0
double0
pointerNULL


این یک تمرین خوب برای این است که متغیر ها را به درستی مقداردهی کنید. در غیر این صورت در برخی موارد برنامه ها می توانند نتایج غیرمنتظرهای را تولید کند.

 

از اینکه سایت برنامه نویسان را انتخاب کردید متشکریم با تشکر از سایت ilikephp.

آموزش برنامه نویسی قسمت چهاردهم

آموزش برنامه نویسی قسمت سیزدهم

آموزش برنامه نویسی قسمت دوازدهم

آموزش برنامه نویسی قسمت یازدهم

آموزش برنامه نویسی قسمت دهم

آموزش برنامه نویسی قسمت نهم

آموزش برنامه نویسی قسمت هشتم

تابع ,یک ,a ,محدوده ,متغیر ,local ,local variable ,تابع یا ,یا اعلان ,تعریف یا ,محلی  local ,محلی  local variable

مشخصات

آخرین ارسال ها

آخرین جستجو ها


فابریک فایل seokav5 بلاگی برای فایل ها کتابخانه عمومی آزادگان ساری pooyarayanehsd تفریحات سالم منزل مبله در یزد هیواتک samuicashloans علمی و فناوری