مشخص کردن متغیرها در C

متغیرها چیزهایی هستند که برنامه های شما را بزرگ می کنند. برنامه نویسی بدون آنها امکان پذیر نیست. در نتیجه اگر تاکنون با متغیرها آشنا نشدید، حالا فرصت خوبی برای یادگیری آن است.

“مریم متغیر” یک متغیر عددی است. عاشق این است اعداد را نگه دارد. (هر عددی را) هر موقع یک علامت مساوی ببیند آن را می گیرد و تا می تواند حفظش می کند. ولی اگر یک علامت مساوی (=) دیگر ببیند، مقدار جدید را می گیرد. با این حساب می توانیم بگوییم مریم واقعا دمدمی مزاج است. می توانیم بگوییم مقادیری که مریم حفظ می کند، متغیرند. دقیقا برای همین هم فامیلی اش متغیر  است.

 “علی متغیر”  یک متغیر رشته ای است. او بیت های متن را دارا می باشد. هرچیزی از یک کاراکتر گرفته تا کاراکترهای بسیار در یک خط. تا زمانی که مقادیر، کاراکتر باشند، علی اهمیتی نمی دهد چقدر کاراکتر حفظ کند. ولی چه کاراکترهایی؟ علی اهمیتی نمی دهد، برای اینکه متغیر است و وظیفه اش حفظ هر چیزی است.

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

چرا باید متغیر را اعلان کنم؟

شما احتیاج دارید متغیرهایتان را به کامپایلر C اطلاع بدهید قبل از اینکه از آنها استفاده کنید. اینکار را با تهیه لیستی از متغیرها در نزدیک شروع کد برنامه انجام می دهید. از این طریق کامپایلر می فهمد چه متغیرهایی باید فراخوانده شوند و چه نوع متغیرهایی هستند (چه مقادیری می توانند بگیرند) بطور رسمی این پروسه برای اعلان متغیرها شناخته شده و بکار می رود.

برای مثال :

سه متغیر اینجا اعلان کردیم. یک متغیر عدد صحیح  یا integer بنام count. یک متغیر کاراکتری بنام key و یک متغیر کاراکتری بنام lastname که رشته ای است که می تواند تا 30 کاراکتر باشد.

انجام این ها در شروع برنامه به کامپایلر چیزهای زیادی را می گوید. اول از همه، می گوید که “این ها متغیر هستند.” از این طریق وقتی کامپایلر lastname را در برنامه می بیند، می داند که متغیری رشته ای است.

دوم، اعلان متغیرها به کامپایلرها می گوید چه نوع متغیرهایی استفاده شده اند. برای مثال کامپایلر می داند که مقادیر صحیح مناسب متغیر conut هستند.

سوم، کامپایلر می داند چه مقدار فضای حافظه باید برای متغیرها اختصاص دهد. این امر نمی تواند روی هوا و بدون برنامه ریزی موقع اجرای برنامه، عملی شود. فضا می بایستی تعیین شود  هنگامی که کامپایلر برنامه را می سازد.

  • اعلان متغیرها در شروع برنامه می بایستی بعد خطی که با براکت، آغاز می شوند، باشد.
  • به طور مشخص، شما نمی توانید تمام متغیرهای مورد نیاز یک برنامه را قبل نوشتن آن بدانید. (اگر چه در دانشگاه ها این چنین درس داده می شود ولی چنین فشار بیش از حد ذهنی حقیقتا نیاز نیست) اگر به متغیر جدید نیاز دارید، از ادیتور خود برای اعلان آن در برنامه استفاده کنید. متغیرهای بد خطاهای سینتکسی یا پیوندی ایجاد می کنند (بسته به اینکه چگونه استفاده می شوند)
  • اگر دوست ندارید یک متغیر را اعلان کنید، برنامه شما کامپایل نمی شود و با یک مسیج شکایت روبرو خواهید شد.
  • بیشتر برنامه نویسان C بین اعلان متغیرها و باقی برنامه یک خط خالی، فاصله می گذارند.
  • هیچ مشکلی با کامنت گذاری برای یک متغیر و به منظور شرح اینکه چه چیزی را شامل می شود، نیست. برای مثال :

  • در انتخاب نام متغیرها هوشمندانه عمل کنید تا نیاز چندانی هم به کامنت گذاری نباشد.  مثال :

اسامی متغیرها و نباید ها و بایدها

اینکه چه نام متغیری را انتخاب می کنید بستگی به کامپایلر شما دارد. تعداد کمی قوانین برای نام گذاری وجود دارند، به اضافه اینکه تعدادی اسامی را نمی توانید برای متغیرهای خود انتخاب کنید. وقتی قوانین را بشکنید، کامپایلر، شما را با مشخص کردن پیغام خطا، مطلع می کند. برای جلوگیری از این مسئله، راهنمای زیر را در پس ذهنتان برای انتخاب نام دنبال کنید ( وقتی که متغیر جدید برای زبان C می سازید) :

  • کوتاه ترین نام متغیر، یک حرف از الفبا است.
  • اسامی متغیری را انتخاب کنید که معنی چیزی را داشته باشند. متغیرهای تک حرفی مبهم هستند. index از i برای مثال بهتر است. conut بهتر از c  است. name بهتر از n است. کوتاه و تشریحی بودن، بهترین راه انتخاب اسامی متغیرهاست.
  • متغیرها به طور معمول به صورت حروف کوچک هستند. (بیشتر بخش C تماما حروف کوچک است)
  • حروف بزرگ را هم می توانید استفاده کنید ولی بیشتر کامپایلرهای سی تمایل دارند که تفاوت میان حروف بزرگ و کوچک را نادیده بگیرند. (می توانید به کامپایلر بگویید که بر روی حروف کوچک یا بزرگ حساس باشد یا نه. از طریق تنظیم ویژگی های کامپایلر می توانید این کار را بکنید. به دفترچه راهنمای کامپایلر خود رجوع کنید)
  • نمی بایستی که نام یک متغیر را با یک عدد شروع کنید. می توانید از اعداد در آنها استفاده کنید ولی نمی توانید آنرا با عدد شروع کنید. باید یک حرف الفباء باشد.
  • اساتید C از خط زیرین برای جداسازی نام متغیرشان استفاده می کنند.  برای مثال first_name یا post_code و غیره. این تکنیک، خوب است ولی شروع متغیر با خط زیرین توصیه نمی شود.
  • از اینکه متغیرهای خود را همنام کلیدواژه ها یا توابع C بسازید، خود داری کنید. برای مثال متغیر صحیح interger خود را int ننامید! یا متغیر رشته ای را char ننامید. شاید این نام گذاری ها پیغام خطا هم توسط کامپایلرتان ایجاد نکنند ولی خواندن سورس کد را بسیار مشکل و گیج کننده می سازند.
  • از اینکه از تک حرف l یعنی L کوچک یا o یعنی O کوچک برای متغیر استفاده کنید، خود داری کنید. برای اینکه اولی بسیار شبیه عدد 1 و دومی بسیار شبیه 0 می شود.
  • از اسامی مشابه برای متغیرهای خود استفاده نکنید. این اشتباهی بود که خودم نیز سالها پیش مرتکب می شدم.
  • کتاب حجیم کامپایلر خود را برای خواندن قواعد نام گذاری متغیرها در کتابخوانه دفن کنید. این ها که گفته شد قوانین رسمی یکتایی هستند که برای هر کامپایلری یکسان عمل می کنند.

دن گوکین، دامیز



برای مشاهده لیست کامل درس های C و C++ سایت اینجا را کلیک کنید.


جدیدترین درس های C و C++ ما را از طریق پست الکترونیک دریافت کنید

آدرس email خود را در این کادر وارد کنید.

توسط FeedBurner

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *