Тип аты
|
Жүйелік тип
|
Мәндер аралығы
|
Өлшемі
|
Логикалық тип
|
Bool
|
System.Boolean
|
true, false
|
8 бит
|
Арифметикалық
бүтін санды
типтер
|
Sbyte
|
System.SByte
|
-128 – 127
|
Таңбалы,8 бит
|
Byte
|
System.Byte
|
0 – 255
|
Таңбасыз, 8 бит
|
Short
|
System.Short
|
-32768 – 32767
|
Таңбалы, 16 бит
|
Ushort
|
System.Ushort
|
0 – 65535
|
Таңбасыз, 16 бит
|
int
|
System.Int32
|
≈(-2*10^9 – 2*10^9)
|
Таңбалы, 32 бит
|
Uint
|
System.UInt32
|
≈(0 – 4*10^9)
|
Таңбасыз, 32 бит
|
Long
|
System.Int64
|
≈(-9*10^18 – 9*10^18)
|
Таңбалы, 64 бит
|
Ulong
|
System.UInt64
|
≈(0 – 18*10^18)
|
Таңбасыз, 64 бит
|
Жылжымалы
нүктеліарифметикалық тип
|
Float
|
System.Single
|
+1.5*10^-45 - +3.4*10^38
|
7 цифр
|
Double
|
System.Double
|
-5.0*10^-324 - +1.7*10^308
|
15-16 цифр
|
Бекітілген
нүктелі
арифметикалық тип
|
Decimal
|
System.Decimal
|
+1.0*10^-28 - +7.9*10^28
|
28-29
мәнді цифр
|
Символдық
типтер
|
Char
|
System.Char
|
U+0000 – U+ffff
|
16 бит Unicode символы
|
String
|
System.String
|
Unicode символдарының жолы
|
1-кесте. C# тілінің кейбір орнатылған типтері және олардың негізгі сипаттамалары.
Айнымалылар
Айнымалылар мен типтер – тығыз байланысты ұғымдар. Скаляр айнымалының аты, мәні және типі болады. Айнымалының мәні есептеу барысында өзгеріп отырады. Айнымалыға бастапқы мәннің берілуі оның инициализациясы деп аталады.
Жазылу синтаксисі.
|<атрибуттар>||<модификаторлар>|<тип><объявители>;
Айнымалыларды хабарлау кезінде public және private модификаторлары беріледі. Егер атрибуттар мен модификаторлар көрсетілмесе, онда міндетті түрде типін беру керек.
Көптеген программалау тілдерінде айнымалылар модуль деңгейінде хабарлана алады. Олардың әрекет ету облысы барлық модуль болып табылады. Ауқымды айнымалылар модульдің түрлі бөліктерінің арасында ақпарат алмасудың ең тиімді әдісімен қамтамасыз ететін болғандықтан маңызды рөлге ие.
C# тілінде модуль рөлін кластар, атаулар кеңістігі, жобалар және шешімдер атқарады. Атаулар кеңістігінде, жобаларда және шешімдерде айнымалыларды атауға болмайды. C# тілінде атаулар кеңістігінде тек кластар мен олардың жеке жағдайларын, яғни құрылымдарды, интерфейстерді және делегаттарды ғана хабарлауға болады. Сондықтан да C# тілінде модуль деңгейіндегі ауқымды айнымалылар жоқ. Кластар ауқымды айнымалыларды қолданып өзара ақпарат алмаса алмайды. Кластар арасында екі типті қатынас орын ала алады – клиенттік және мұрагерлік, ал есептеу инициализациясының негізгі тәсілі – мақсатты объект үшін әдісті шақыру немесе оқиға өңдеушісін шақыру.
Барлық программалау тілдеріндегі сияқты C# тілінде де айнымалылар аталатын негізгі контекст – бұл процедуралар. Процедура деңгейінде аталатын айнымалылар жергілікті айнымалылар деп аталады.
Паскаль тілінде жергілікті айнымалылар процедуралық блоктың басында аталуы тиіс. Ал C# тілінде айнымалыны процедуралық блоктың кез келген нүктесінде атауға болады. Олардың әрекет ету облысы олардың аталған нүктесінен бастап процедуралық блоктың соңына дейін таралады.
C#-та процедуралық блок күрделі құрылымнан тұруы мүмкін, оның таңдау операторларымен және циклдармен байланысты ішкі блоктары болуы мүмкін. Әрбір ішкі блокта да айнымалыны атауға болады. Ішкі блоктарда аталған айнымалылардың әрекет ету облысы осы блоктың іші болып саналады. Әрбір осындай блок үшін пролог және эпилог орындалады. Прологта жергілікті айнымалыға жады бөлінеді, ал эпилогта жады босатылады.
Өрнектер.
Өрнектер белгілер мен жақшалар арқылы біріктірілген константалар, айнымалылар және функциялар сияқты операндтардан құрылады. Өрнектерді есептеу кезінде олардың мәні мен типі анықталады. Бұл сипаттамалар өрнекке жататын операндтардың мәндері мен типтері және өрнектерді есептеу ережелері арқылы беріледі. Сонымен қатар ол ережелер:
операциялар приоритетін;
бір приоритетті операциялар үшін қолданылу ретін;
операндтар типін түрлендіруді және бір оператордың бірнеше нұсқасын қолдануды жүзеге асыруды;
белгілі бір типті операнд мәндеріне жүзеге асырылған операциялардың орындалу нәтижесінің типі мен мәнін анықтайды.
Достарыңызбен бөлісу: |