متغیرها در سی شارپ
در این قسمت قصد بررسی متغیرهای مختلف در زبان برنامه نویسی سی شارپ را داریم تا شما با مفهوم متغیرهای این زبان بهتر آشنا شوید.
متغیرها در سی شارپ
حتما قبل از بررسی متغیرها در سی شارپ نوشتهی مطالب قبلی این دورهی آموزشی را با هشتگ #دوره آموزشی_سی_شارپ در سایت ما را مطالعه کنید. شاید هیچ سازهای به اندازهی متغیرها برای یک زبان برنامه نویسی اهمیت ندارد. زبانهای برنامه نویسی به شما اجازه میدهند که مکانهای خاصی را برای نگهداری اطلاعات در حافظه بوجود بیاورید. این مکانهای خاص همان متغیرها هستند. متغیر در واقع مکانی (گرفتن مکانی) در حافظه است که میتوان یک مقدار را به آن اختصاص داد. به این دلیل به آن متغیر میگویند که مقدار آن میتواند در طول اجرای برنامه تغییر کند.
نحوه تعریف متغیر
Type Var-Name; // Type -> نوع متغیر // Var-Name -> نام متغیر int x; int y; int z; string a, b; x = 523; y = x / 5; a = "Amir"; b = a + "Ali"; // b = "AmirAli";
سی شارپ طیف گسترده ای از عملگرهای محاسباتی را پشتیبانی را میکند.
از جمله این عملگرها: + , – , * , /
تا اینجا ما فقط از اعداد صحیح برای محاسبه استفاده کردیم، برای استفاده از اعداد اعشاری باید از نوع عددی double، float و decimal استفاده کنیم. نوع عددی float برای مقادیر ممیز شناور با دقت کمتر و نوع عددی double برای مقادیر ممیز شناور با دقت بیشتر است. به طوری که دقت double دو برابر float است. decimal یک دیتا تایپ ۱۲۸ بیتی است که در مقایسه با float و double از دقت بیشتر و بازه ی کمتری برخوردار است. این خاصیت آن باعث میشود که برای محاسبات پولی و مالی بسیار مناسب است. نوع float سی و دو بیتی است و نوع دابل ۶۴ بیتی است.
سی شارپ شامل دو دسته بندی برای data type (نوع داده) است:
- Value Type
- Reference Type
تفاوت بین این دو، مقداری است که آن متغیر دارد. برای value type، متغیر یک مقدار واقعی را در خود نگه میدارد.
مثل: ۲۲ یا ۱۵٫۷۵ اما برای Reference type، متغیر یک ارجاع به Value را در خود نگه میدارد که این اکثراً در کلاس مورد استفاده قرار میگیرد.
نکته: سی شارپ همچنین ۹ integer type را تعریف میکند که char، byte، sbyte، short، ushort، int، uint، long، ulong هستند. هرکدام بازه ی خاصی از اعداد را شامل میشوند.
نوع دادهای Float و Double
به مثال زیر توجه کنید:
int x = 20; float y = 10.5F; float result = (x / y)f ; double z = 11.71;
در زبان برنامه نویسی سی شارپ متغیرهای نوع float به شکل خاصی تعریف و استفاده خواهند شد؛ نکتهی float اینجاست که باید بعد از آن از پسوند F یا f استفاده کنید. در غیر این صورت کامپایلر به شما پیغام خطا میدهد و به شما میگوید که نمیتوانید یک مقدار از جنس double را در متغیری از جنس float ذخیره کنید. زیرا اعداد اعشاری به صورت پیش فرض double هستند.
نوع دادهای Decimal
نوع Decimal برای محاسبات مالی است. نوع دسیمال با بهره گیری از ۱۲۸ بیت برای نشان دادن مقادیر در محدودهی ۲۸-۱۰ * ۱٫۰ و ۱۰۲۸ * ۷٫۹ استفاده میکند. در محاسبات معمولی ممیز شناور، گرد کردن رخ میدهد. نوع دسیمال این خطاها را از بین میبرد و دقیقاً تا ۲۸ رقم اعشار (در بعضی موارد ۲۹ رقم اعشار) را نشان میدهد. این توانایی نوع Decimal را برای محاسبات پولی و مالی بسیار مناسب میکند.
بعد از نوع Decimal باید به عدد خود کاراکتر M (یا m) را اضافه کنید:
decimal d = 12.30M;
چرا که در غیر این صورت مقدار متغیر به عنوان double تفسیر میشود(مقادیر اعشاری به صورت پیشفرض double هستند).
مثال: در این مثال ما میخواهیم نام و نام خانوادگی کاربر را دریافت کنیم و در نهایت یک پیغام خوش آمد گویی به کاربر نمایش دهیم. هدف از این مثال این است که شما بیاموزید چگونه یک مقدار (ورودی) را از کاربر دریافت کنید و چگونه آن را نمایش دهید و در صورت نیاز چه تغییراتی روی آن اعمال کنید. نام وارد شده که مسلماً string (رشتهای از کاراکترها) است پس شما باید یک مکان را برای گرفتن این مقدار آماده کنید. کامپیوتر در نهایت همه ی اطلاعات را در خانه های حافظه (Ram) ثبت میکند که به صورت باینری هستند. حتی برنامه نویسان کارکشته و باتجربه هم ترجیح میدهند به جای استفاده از باینری، مستقیماً از اعداد، متن و نوشته استفاده کنند. یکسری قرارداد و راهنمایی برای نام گذاری وجود دارد که به شما کمک میکند چگونه یک نام بسیار مناسب را انتخاب کنید.
اگر در زمان آینده به برنامهی خود برگشتید دچار سردرگمی نشوید:
- از space و نقطه گذاری و عملگرها نمیتوانید در انتخاب نام استفاده کنید.
- از کلمات کلیدی و پیش فرض و نام دستورات نمیتوانید در انتخاب نام استفاده کنید.
- از نام های ساده، خوانا و با معنی استفاده کنید.
- خوانایی و با معنی بودن یک اسم را قربانی یک اسم کوتاه و عجیب و غریب نکنید.
بهتر است نام متغیرها با _ شروع شود. - از خط فاصله یا هر کاراکتری غیر از کارکترهای الفبایی استفاده نکنید.
- از انتخاب اسمهایی که با کلمات کلیدی زبان برنامهنویسی تداخل دارند پرهیز کنید.
- سی شارپ یک زبان case-sensitive است و اکثر برنامه نویسان به طور عمده از حروف کوچک برای نامگذاری متغیرها استفاده میکنند. اگر نام متغیر چند قسمتی است برای تمایز بین کلمات از حروف بزرگ استفاده کنید. برای مثال userName و userSurname ، دو قسمتی (دو کلمهای) هستند و userName از دو کلمهی user و name تشکیل شده است. برای تمایز بین آنها حرف N را بزرگ نوشتهایم و هر کلمه ای که به این اسم بخواهد اضافه شود حرف اول آن را بزرگ بذارید.
string _UserName, _UserSurname; _UserName = "Amir"; _UserSurname = "Amiri"; Console.WriteLine("Hi there, {0} {1}", _UserName, _UserSurname); // Hi there, Ali Ahmadi Console.WriteLine("Hi there, {1} {0}", _UserName, _UserSurname);// Hi there, Ahmadi Ali
کاراکترها (Characters)
از دیتا تایپ char برای نگهداری هر کاراکتری میتوان استفاده کرد. در متغیری از جنس char شما میتوانید کاراکترهای تکی (Single Character) را نگهداری کنید. سی شارپ بر اساس استاندارد یونی کد از ۱۶ بیت برای نمایش کاراکترها استفاده میکند، این ویژگی سی شارپ باعث میشود. بتوانید مقادیر جالبی را با فرمت یونی کد تولید کنید. همچنین علامتهای خاص از جمله علامتهای پولهای خارجی، علامتهای ریاضی، اشکال هندسی و غیره که در صفحه کلید استاندارد موجود نیستند. اما با استاندارد یونی کد قابل دسترسی هستند.
مقادیر کاراکتر را باید بین علامت single quotation (سینگل کوتیشن ‘ ‘) قرار داد.
char aBackspaceChar = '\b'; char aTabChar = '\t';
در این مثال، escape sequence یک مقدار را برای هر کاراکتر (یک backspace و یک tab بهجای حروف b و t) نشان میدهد. متغیری از جنس char تنها یک کاراکتر را در خود نگه میدارد. برای داشتن رشتهای از کاراکترها (مثل نام شخصی خودتان) باید از string استفاده کنید.
مقدار منطقی (The bool Type)
نوع داده bool یک منطق بولی (بولین – Boolean) است که مقدار آن false یا true است. برای اعلام یک متغیر بولین باید از کلمه کلیدی bool استفاده کنید.
bool isItMonday = false; bool areYouTired = true;
شما همچنین میتوانید بر اساس نتیجهی مقایسه ی دو مقدار، مقدار true یا false را در یک متغیر بولین قرار دهید. عملگرهای مقایسهای دو آیتم را با هم مقایسه میکنند، یک عبارت که شامل عملگر مقایسه ای است، یک مقدار بولین دارد.
bool isSixBigger = 6 > 5; // Value stored would be true bool isSevenSmallerOrEqual = 7 <= 4; // Value stored would be false
در این مثال دو عدد با هم مقایسه میشوند و حاصل آنها که یا true است یا false، در متغیر بولین قرار داده میشود.
نکته ی مهم:
توجه کنید که علامت انتساب یک “تک مساوی” است و علامت مقایسهی دو مقدار “دومساوی” است. نظرات خود را در ارتباط با “متغیرها در سی شارپ” برای ما ارسال کنید.
برای استفاده از تمامی جلسات از هشتگ #دوره آموزشی_سی_شارپ در سایت ما استفاده کنید.
منتظر جلسهی بعدی دوره آموزشی سی شارپ بمانید.
ارسال پاسخ