|
S252-23 mmo' Guruh talabasi Rustambekova goʻzal
|
bet | 2/2 | Sana | 29.06.2024 | Hajmi | 86,39 Kb. | | #266215 |
Bog'liq Go`zal2.Test savollari
Ko'rsatkichlar nima?
Ma'lumotlarni saqlaydigan o'zgaruvchilar
Xotira manzillarini saqlaydigan o'zgaruvchilar
Ma'lumotlarni ko'chiradigan funksiyalar
Ko'rsatkichni qanday aniqlash mumkin?
int &ptr;`
int ptr*;`
int *ptr;`
Quyidagi kodning natijasi nima bo'ladi?
int x = 10;
int *ptr = &x; cout << *ptr;
10
Xotira manzili
Xato
Null pointer nima?
Xotira manziliga ega bo'lgan ko'rsatkich
Hech qanday manzilga ishora qilmaydigan ko'rsatkich
Massivga ishora qiladigan ko'rsatkich
Quyidagi kod nima qiladi?
int *ptr = new int;
*ptr = 5; delete ptr;
Integer qiymatini 5 ga o'zgartiradi va xotirani bo'shatadi
Integer qiymatini 0 ga o'zgartiradi va xotirani bo'shatadi
Integer qiymatini o'chiradi
Dangling pointer nima?
Hech qanday manzilga ishora qilmaydigan ko'rsatkich
Xotirada bo'shatilgan manzilga ishora qiladigan ko'rsatkich
Xotirada ajratilgan manzilga ishora qiladigan ko'rsatkich
Ko'rsatkich arifmetikasi nimani anglatadi?
Ko'rsatkichlarni ko'paytirish va bo'lish
Ko'rsatkichlarni qo'shish va ayirish
Ko'rsatkichlarni boshqa turlarga aylantirish
Quyidagi kodning natijasi nima bo'ladi?
int arr[3] = {1, 2, 3}; int *ptr = arr;
cout << *(ptr + 1);
a) 1
b) 2
c) 3
Ko'rsatkichlar yordamida massiv elementlariga qanday kiriladi?
arr[i]`
*(arr + i)`
Ikkalasi ham to'g'ri
Quyidagi kod nima qiladi?
void func(int *p) {
*p = 20;
}
int main() { int x = 10; func(&x); cout << x;
}
Xatolik beradi
10 ni chiqaradi
20 ni chiqaradi
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
b
|
c
|
a
|
b
|
a
|
b
|
b
|
b
|
c
|
c
|
C++ dasturlash tilida ko'rsatkichlar bo'yicha glossary (lug'at):
Pointer (Ko'rsatkich): Ko'rsatkich, bu boshqa bir o'zgaruvchining xotira manzilini saqlaydigan o'zgaruvchidir. C++ tilida ko'rsatkichlarni aniqlash uchun `*` (yulduzcha) operatoridan foydalaniladi. Masalan, `int *ptr;` ko'rsatkichi `int` tipidagi o'zgaruvchining xotira manzilini saqlaydi.
Dereferencing (Ko'rsatkich orqali murojaat qilish): Ko'rsatkich orqali saqlangan xotira manziliga murojaat qilish jarayoniga dereferentsiya deyiladi. `*` operatori yordamida ko'rsatkich orqali murojaat qilinadi. Masalan, `*ptr` orqali `ptr` ko'rsatkichida saqlangan xotira manzilidagi qiymatga murojaat qilinadi.
Null Pointer (Nol ko'rsatkich): Nol ko'rsatkich, hech qanday xotira manziliga ishora qilmaydigan ko'rsatkichdir. Bu odatda `nullptr` yoki eski usulda `NULL` yordamida aniqlanadi. Null ko'rsatkich dasturlashda xatoliklarning oldini olish uchun qo'llaniladi.
Pointer Arithmetic (Ko'rsatkichlar arifmetikasi): Ko'rsatkichlar bilan arifmetik amallar bajarish imkoniyati C++ tilida mavjud. Ko'rsatkichlar arifmetikasi yordamida ko'rsatkich manzillarini qo'shish, ayirish va solishtirish mumkin. Masalan, `ptr + 1` amali ko'rsatkichni bir elementga (tipiga bog'liq holda) keyingi manzilga o'tkazadi.
Pointer to Pointer (Ko'rsatkichga ko'rsatkich): Ko'rsatkichlarga ham ko'rsatkichlar bo'lishi mumkin, bu "ko'rsatkichga ko'rsatkich" deb ataladi. Bu usul ko'pincha dinamik xotira ajratishda yoki ikki o'lchovli massivlarni ishlatishda qo'llaniladi. Masalan, `int
**ptrPtr;` ko'rsatkichi `int` tipidagi ko'rsatkichga ishora qiladi.
|
| |