|
Avvaldan mavjud ichki turlar
|
bet | 23/154 | Sana | 08.01.2024 | Hajmi | 5,29 Mb. | | #131939 |
Bog'liq MajmuaAvvaldan mavjud ichki turlar
C# tili CLS (Common Language Specification) ga mos keladigan keng turlar to‘plamini taqdim etadi. Bu turlar NET platformasiga mos keladi, ya’ni C# da hosil qilingan obyektlar .NET CLS qo‘llab-quvvatlaydigan har qanday dasturlash tilida foydalanish mumkin (masalan VB.NET). Har bir tur aniq o‘zining o‘zgarmas o‘lchamiga ega. Quyida C# tomonidan taqdim etilgan turlar ro‘yxati jadvalda keltirilgan:
2.2.3-jadval. C# da mavjud turlar
Tur
|
.NET Frameworkdagi tur
|
Qiymatlar sohasi
|
O‘lchovi
|
sbyte
|
System.SByte
|
-128 … 127
|
8 bit
|
byte
|
System.Byte
|
0 … 255
|
8 bit
|
char
|
System.Char
|
U + 0000 … U + ffff
|
16 bit
|
bool
|
System.Boolean
|
true yoki false
|
8 bit
|
short
|
System.Int16
|
-32,768 … 32,767
|
16 bit
|
ushort
|
System.UInt16
|
0 … 65,535
|
16 bit
|
int
|
System.Int32
|
-2,147,483,648 … 2,147,483,647
|
32 bit
|
uint
|
System.UInt32
|
0 … 4,294,967,295
|
32 bit
|
long
|
System.Int64
|
-9,223,372,036,854,775,808 …
9,223,372,036,854,775,807
|
64 bit
|
ulong
|
System.UInt64
|
0 … 18,446,744,073,709,551,615
|
64 bit
|
float
|
System.Single
|
±1.5 × 10-45 … ±3.4 × 1038
|
32 bit, 7 razryad
|
double
|
System.Double
|
±5.0 × 10-324 … ±1.7 × 10308
|
64 bit, 16 razryad
|
decimal
|
System.Decimal
|
±1.0 × 10-28 … ±7.9 × 1028
|
128 bit, 28 razryad
|
string
|
System.String
|
-
|
-
|
object
|
System.Object
|
-
|
-
|
Yuqoridagiga qo‘shimcha tarzda C# da yana enum, struct turidagi obyektlar ham bor.
O‘zgaruvchilar
Dastur ishlash davomida ma’lumotlar vaqtinchalik saqlashiga to‘g‘ri keladi. Bu o‘zgaruvchilar va o‘zgarmaslar orqali amalga oshiriladi. O‘zgaruvchilar aniq tur obyektining xotirada joylashishini unga murojaatni ta’minlaydi. O‘zgaruvchilar e’lon qilish vaqtida qiymatga ega bo‘lishi yoki dastur davomida qiymat o‘zlashtirilishi mumkin. O‘zgaruvchilarni e’lon qilish:
Tur Nom1;
yoki
Tur Nom1, Nom2, …, NomN;
Tur Nom1 = qiymati;
Tur Nom2 = qiymati;
Tur Nom3 = qiymati;
…;
Tur NomN = qiymati;
O‘zgaruvchilarga qiymat o‘zlashtirish
Yangi o‘garuvchi hosil qilish uchun avval uning turini aniqlash kerak yoki avvaldan mavjud turlardan foydalanish kerak. O‘zgaruvchini ishlatishdan oldin unga nom berish va uning turini ko‘rsatish lozim. Uni e’lon qilish vaqtida unga qiymat o‘zlashtirish yoki dastur bajarilishi davomida qiymat o‘zlashtirish mumkin. Qiymat o‘zlashtirish uchun “=” operatoridan foydalaniladi:
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int m1 = 10; // e’lon qilish vaqtida qiymat o‘zlashtirish
Console.WriteLine("E’lon qilish vaqtidagi qiymat m1= {0} ", m1);
m1 = 5; //dastur ishlash davomida qiymat o‘zlashtirish
Console.WriteLine("Qiymat o‘zlashtirgandan keyin m1= {0}", m1);
Console.ReadKey();
}
}
}
Dastur natijasi quyidagicha:
E'lon qilish vaqtidagi qiymat m1= 10
Qiymat o‘zlashtirgandan keyin m1= 5
Har bir o‘zgaruvchining qiymatini ishlatishdan oldin unga qiymat o‘zlashtirish kerak. Masalan:
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int m1; // faqat e’lon qilish
Console.WriteLine("E’lon qilish vaqtidagi qiymat m1= {0} ", m1);
m1 = 5; //dastur ishlash davomida qiymat o‘zlashtirish
Console.WriteLine("Qiymat o‘zlashtirgandan keyin m1= {0}", m1);
Console.ReadKey();
}
}
}
Bu vaqtda kompilyator xatolik haqida xabar beradi (Xato yozilgan ifodaning tagiga qizil to‘lqin chiziq bilan ko‘rsatadi).
O‘zgarmaslar (konstantalar) - qiymatlari kompilyatsiya vaqtida o‘rnatiladigan va o‘zgarmaydigan maydonlar. Dastur ishlash davomida o‘zgaruvchining qiymatini o‘zgartirmasdan saqlashga to‘g‘ri keladi. Masalan, Pi sonini o‘zgarmas sifatida saqlash maqsadga muvofiq. Buning uchun Pi o‘zgarmas sifatida e’lon qilinishi kerak:
const double Pi= 3.1415926535897932384626433832795;
C# da 3 turdagi o‘zgarmaslar mavjud: literalli, simvolli va to‘plamli o‘zgarmaslar. Quyidagi misolni ko‘ramiz:
x = 100;
100 qiymati bu literalli o‘zgarmas bo’lib, uning qiymati har doim 100 va unga yangi qiymat o‘zlashtirish mumkin emas. 100 ni hech qachon 55 qiymatini ko‘rsatadigan qilish mumkin emas. Simvolli o‘zgarmaslar o‘zgarmas qiymatga nom beradi.
Simvolli o‘zgarmaslarni const kalit so‘zi orqali e’lon qilinadi va quyidagi sintaksis qo‘llaniladi: const turi identifikator = qiymat;
Har bir o‘zgarmas e’lon qilish vaqtida qiymat o‘zlashtirilishi shart va uning qiymati dastur bajarilishi davomida o‘zgartirilmasligi kerak: const double Pi= 3.1415926535897932384626433832795; Pi simvolli o‘zgarmas.
|
| |