O‘zgaruvchilarni initsializatsiya qilish




Download 403,14 Kb.
Pdf ko'rish
bet5/6
Sana19.12.2023
Hajmi403,14 Kb.
#123998
1   2   3   4   5   6
Bog'liq
C-dasturlash-tilida-o‘zgaruvchi-va-o‘zgarmas-tipli-kattaliklar

O‘zgaruvchilarni initsializatsiya qilish. Initsializatsiya – bu o‘zgaruvchilar 
e’lon qilinganida, ularning boshlang‘ich qiymatini belgilashdir. Initsializatsiyada 


o‘zgaruvchiga berilgan qiymat o‘zgarmas bo‘lishi kerak. Umuman olganda, bir 
nechta o‘zgaruvchilarni e’lon qilishda, ulardan ixtiyoriy birini (yoki barchasini) 
initsializatsiya qilish mumkin. 
Masalan: 
int x, y=10, z; 
float x1=5.7, x2=1.3; 
unsigned int max=0; 
O‘zgaruvchini e’lon qilish kompyuter xotirasidan joy ajratilishiga olib keladi. 
Bunda xotiradagi ma’lumot o‘chmaydi va o‘zgaruvchining qiymati aniqlanmaydi. 
Initsializatsiya esa xotira yacheykasi ajratilganda, unga o‘zgaruvchining dastlabki 
qiymati yozilishiga olib keladi. 
Global va lokal o‘zgaruvchilar nolga yoki foydalanuvchi tomonidan 
aniqlangan boshlang‘ich qiymat bilan boshlanadi. Global o‘zgaruvchilar dastur 
boshlanganda bir marta ishga tushiriladi. Lokal o‘zgaruvchilar esa biror blok ichida 
qayta ishga tushiriladi. Masalan: 
for(int i=1; i<10; i++) 

int k=0; 
k++; 

С standartida siz o‘zgaruvchini faqat o‘zgarmas bilan boshlashingiz mumkin. 
C ++ dasturlash tilida esa nafaqat o‘zgarmas, balki oldin aniqlangan o‘zgaruvchilar 
qiymatlaridan foydalangan holda ham ifodani boshlash mumkin. 
Agar int yoki char turidagi qiymatlar, o‘zgaruvchining ma’lumotlar turini 
qiymatlari doirasidan tashqarida joylashgan o‘zgarmas bilan ishga tushirilsa, u 
holda o‘zgaruvchining qiymati, ma’lumot turining bitdagi hajmiga bo‘lgandagi 
qoldiqqa teng bo‘ladi.
Masalan: 
char ch=260; 


Bunda ch o‘zgaruvchining qiymati 4 ga teng bo‘ladi (char tipi xotiradan 8 bit 
joy egallaydi. Shu sababli, 260 ni 8 ga bo‘lsak 4 qoldiq hosil bo‘ladi). 
Agar float yoki double tipidagi qiymat o‘zgaruvchining ma’lumotlar turi 
diapazonining yuqori musbatidan katta yoki pastki manfiy chegarasidan kichik 
bo‘lgan o‘zgarmas bilan boshlanadigan bo‘lsa, u holda o‘zgaruvchining qiymati 
aniqlanmaydi, chunki xotirada joy qolmaydi. Agar o‘zgarmasni qiymati 
o‘zgaruvchining ma’lumotlar turi diapazoni pastki musbatidan yuqori va yuqori 
manfiy chegarasidan katta bo‘lsa, u holda o‘zgaruvchi nolga tenglashtiriladi. 
Masalan: float f1=5e-50, f2=5e+50;. 
Bunda f1 o‘zgaruvchi 0 qiymat qabul qiladi. f2 o‘zgaruvchiga esa + INF 
(cheksizlik) qiymat o‘zlashtiriladi. 
Agar int yoki char tipidagi belgilangan o‘zgaruvchiga, qiymati 
o‘zgaruvchining ma’lumotlar turi qiymatlari oralig‘ida bo‘lmagan qiymat bilan 
ishga tushirilsa, uning qiymati to‘ldiruvchi raqam sifatida qabul qilinadi. 
Masalan:
short int x=65000; 
Bunda x o‘zgaruvchisi –536 qiymatiga ega bo‘ladi (short int tipi tarkibida –
32767... 32767 oralig‘idagi 65536 ta son mavjud. Shu sababli, x=65000-65536= -
536 qiymat qabul qiladi). 
Agar int yoki char tipidagi belgilanmagan o‘zgaruvchiga, qiymati 
o‘zgaruvchining ma’lumotlar turining oralig‘ida bo‘lmagan, lekin belgilangan bir 
xil qiymatlari oralig‘ida joylashgan o‘zgarmas bilan ishga tushirilsa, qiymat 
to‘g‘ridan-to‘g‘ri koddagi raqam sifatida ko‘rib chiqiladi va o‘zgaruvchiga 
berilgan qiymat musbat son bo‘ladi. Masalan: unsigned short a=-10; 
Bunda a o‘zgaruvchi 65526 qiymat qabul qiladi (a=65536-10=65526). 

Download 403,14 Kb.
1   2   3   4   5   6




Download 403,14 Kb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



O‘zgaruvchilarni initsializatsiya qilish

Download 403,14 Kb.
Pdf ko'rish