درس دوم – عبارات، انواع و متغیرها در C#

نشان دادن مقادیر منطقی (Boolean)

using System;

class Booleans

{

  public static void Main()

   {

    bool content = true;

    bool noContent = false;

    Console.WriteLine("It is {0} that C# Persian provides C# programming language

        content.", content);

    Console.WriteLine("The statement above is not {0}.", noContent);

   }

}

در این مثال، مقادیر منطقی متغیر‌های Boolean به عنوان قسمتی از جمله در خروجی نمایش داده می‌شوند. متغیر‌های bool تنها می‌توانند یکی از دو مقدار true یا false را داشته باشند، یعنی همانند برخی از زبانهای برنامه‌سازی مشابه، مانند C و یا C++، مقدار عددی نمی‌پذیرند، زیرا همانگونه که می‌دانید در این دو زبان هر مقدار عددی صحیح مثبت بغیر از صفر به عنوان true و عدد صفر به عنوان false در نظر گرفته می‌شود و در حقیقت نوع bool در این دو زبان نوعی integer می‌باشند. اما در زبان C# انواع bool یکی از دو مقدار true یا false را می‌پذیرند. خروجی برنامه بالا به صورت زیر است :

It is True that C# Persian provides C# programming language content.

The statement above is not False.

جدول زیر تمامی انواع عددی صحیح ‍C اندازه آنها و رنج قابل قبول آنها را نشان می‌دهد.

 

رنج قابل قبول   اندازه به بیت    نوع

128- تا 127    8        sbyte

0 تا 255        8        byte

32768- تا 32767      16      short

0 تا 65535     16      ushort

2147483648- تا 2147483647       32      int

0 تا  4294967295    32      uint

9223372036854775808- تا 9223372036854775807    64      long

0 تا 18446744073709551615       64      ulong

 

از این انواع برای محاسبات عددی استفاده می‌گردد. یک نوع دیگر را نیز می‌توان در این جدول اضافه نمود و آن نوع char است. هر چند شاید از نظر بسیاری از دوستانی که با زبانهای دیگر برنامه‌سازی کار کرده‌اند این تقسیم بندی غلط به نظر آید، اما باید گفت که در زبان C# نوع char نیز نوع خاصی از انواع عددی است که رنجی بین صفر تا 65535 دارد و اندازه آن نیز 16 بیتی است، اما به جای نمایش دادن مقادیر عددی تنها می‌تواند بیان کننده یک کاراکتر باشد. در آینده در این مورد بیشتر توضیح خواهم داد.

 

جدول زیر تمامی انواع عددی اعشاری زبان C# را نمایش می‌دهد.

 

رنج قابل قبول   دقت    اندازه به بیت    نوع

  تا  

7 رقم   32      float

    تا  

15-16 رقم      64      double

   تا   

28-29 رقم دسیمال    128    decimal

 

انواعی از نوع floating point هنگامی استفاده می‌شوند که محاسبات عددی به دقت‌های اعشاری نیاز داشته باشند. همچنین برای منظورهای تجاری استفاده از نوع decimal بهترین گزینه است. این نوع تنها در زبان C# وجود دارد و در زبانهای مشابه به آن نظیر Java چنین نوعی در نظر گرفته نشده است.

 

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

 

شرکت‌پذیری    عملگر(ها)       نوع عمل

از چپ  (x)   x.y   f(x)   a[x]   x++   x--

new   typeof   sizeof   checked   unchecked        عملیات ابتدایی

از چپ  +   -   !   ~   ++x   --x   (T)x         عملیات یکانی

از چپ  *   /  %        عملیات ضربی

از چپ  -   +   عملیات جمعی

از چپ  <<   >>       عمل شیفت

از چپ  < > <= >= is          عملیات رابطه‌ای

از راست         ==   !=         عملیات تساوی

از چپ  &        عمل AND منطقی

از چپ  |        عمل OR منطقی

از چپ  ^       عمل XOR منطقی

از چپ  &&      عمل AND شرطی

از چپ  ||       عمل OR شرطی

از چپ  ?:       عمل شرطی

از راست         =   *=  /=   %=  +=  -=  <<=  >>=  &=  ^=  |=       عمل انتساب

 

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

 

مثال 2- عملگرهای یکانی (Unary)

using System;

class Unary

{

  public static void Main()

  {

    int unary = 0;

    int preIncrement;

   

/ 0 نظر / 113 بازدید