Функциялар



Yüklə 227 Kb.
səhifə6/13
tarix15.12.2022
ölçüsü227 Kb.
#75187
1   2   3   4   5   6   7   8   9   ...   13
Функциялар

:: amali
Qayd qilingandan, lokal o’zgaruvchi e’loni xuddi shu nomdagi global o’zgaruvchini “berkitadi” va bu joydan global o’zgaruvchiga murojat qilish imkoni bo’lmay qoladi. S++ tilida bunday hollarda ham global o’zgaruvchiga murojat qilish imkoni mavjud va buning uchun ko’rinish sohasiga ruxsat berish amalidan foydalanish kerak bo’ladi: o’zgaruvchi oldigi ikkita nuqta (“::”) qo’yish zarur bo’ladi. Misol tariqasida quyidagi programani keltiramiz:
#inilude
//global o’zgaruvchi e’loni
int uzg=5;
int main( )
{
//lokal o’zgaruvchi e’loni
int uzg=70;
//lokal o’zgaruvchini chop etish
cout << uzg << ‘/n’;
//global o’zgaruvchini chop etish
cout << ::uzg << ‘/n’;
return 0;
}
Programma ishlashi natijasida ekranga oldin 70 va kuyin 5 sonlari chop etiladi.
Xotira sinflari
O’zgaruvchilarning ko’rinish sohasi va amal qilish vaqtini aniqlovchi o’zgaruvchilar modifikatori mavjud.

Modifikator

Qo’llanishi

Amal qilish
sohasi

Yashash davri

auto

Global

blok

vaqtincha

register

Lokal

blok

vaqtincha

exteru

Global

blok

vaqtincha

static

Lokal

blok

doimiy

Global

fayl

doimiy

volatile

Global

fayl

doimiy

Avtomat o’zgaruvchilar
auto modifikatori lokal o’zgaruvchilar e’lonida ishlatiladi. Odatda lokal o’zgaruvchilar e’lonida bu modifikator kelishuv bo’yicha qo’llaniladi va shu sababli amalda uni tushurib qodiriladi:
# include
int main( )
{
auto int X= 2; // int X = 2; bilan ekvivalent
cout <returu 0;
}
auto modifikatori blok ichida e’lon qilingan lokal o’zgaruvchilarga qo’llaniladi. Bu o’zgaruvchilar blokdan chiqishi bilan avtomat ravishda yo’q bo’lib ketadi.


Registr o’zgaruvchilar
register modifikatori kompilyatorga ko’rsatilgan o’zgaruvchini protsessor registrlariga joylashtirishga harakat qilishni tayinlaydi. Agar bu harakat natija bermasa o’zgaruvchi auto turidagi lokal o’zgaruvchi sifatida amal qiladi.
O’zgaruvchilarni registrlarda joylashtirish programma kodini bajarish tezligi bo’yicha optimallashtiradi, chunki protsessor xotiradagi berilganlarga nisbatan registrdagi qiymatlar bilan ancha tez ishlaydi. Lekin registrlar soni cheklanganligi uchun har doim ham o’zgaruvchilarni registrlarda joylashtirishning iloji bo’lmaydi.
#include < iostream.h >
int main( )
{
register int Reg;

returu 0;
}
register modifikatori faqat lokal o’zgaruvchilariga nisbatan qo’llaniladi, global o’zgaruvchilarga qo’llash kompilyatsiya xatosiga olib keladi.



Yüklə 227 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   ...   13




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin