• Ko’rsatgich ustida amallar.
  • int * r, * r1;
  • long * q = new long [53];
  • cin >> A[i];
  • Dinamik massivlar.
  • Dasturlash 1 swd1316 Ko’rsatkichlar va dinamik xotira bilan ishlash. Dinamik massiv




    Download 5 Mb.
    bet4/4
    Sana10.01.2024
    Hajmi5 Mb.
    #134090
    1   2   3   4
    Bog'liq
    1) 7-mavzu (Dinamik massivlar)
    Yakuniy nazorat, Jahon tarixi. II-qism , 897135, 16. конф, Reference-459231103895, annotatsiya, Документ Microsoft Word, 444, Reja Ma\'lumotlarni qidirish. Chiziqli qidiruv. Binar qidiruv. C, Mustaqil ish, 13-maktab Yillik reja (9), 1. Ekolgik ta\'lim va tarbiyaning tarixiy shakllanishi Ekologik t-fayllar.org, 30303, 2023 2024 ўқув йили Информатика уктиш мет йўналиши ДАК дастури, 2. Kompyuter tarmoqlari 3-kurs sirtqi SILLABUS ( )
    Xotiradan joy ajratish.
    • new ();
    • = () malloc()(); = () calloc()(, < element xotira hajmi>);
    • a) new amali yordamida. Uning sintaksisi:
    • b) malloc() va calloc() funksiyalari yordamida. Ularning sintaksisi:
    • Ajratilgan dinamik xotirani bo'shatish – delete yoki free.
    • Ko’rsatgichlar.
    • Misollar:
        • int* n = new int;
        • int* m = new int (10);
        • int* k = new int [10];
        • int* u = (int *) malloc(sizeof(int));
        • int* p = (int *) calloc(1, sizeof(int));
    • Misollar:
        • delete n;
        • delete [] p;
        • free u;
    • Ko’rsatgich ustida amallar.
    • Ko'rsatkich ustida quyidagi amallar bajarilishi mumkin:
    • qiymat berish amali;
    • ko'rsatkichga o'zgarmas qiymatni qo'shish amali;
    • ayirish amali;
    • solishtirish amali;
    • turga keltirish amali;
    • Ko’rsatgich ustida amallar.
    • int n=5;
    • float x=1.0;
    • int *pi=&n;
    • float *px=&x;
    • void * p;
    • int * r, * r1;
    • px=(float *)&n;
    • p=px;
    • r=(int *)p;
    • r1=pi;
    • Agar har xil turdagi ko'rsatkichlarga qiymatlar berilsa, albatta turga keltirish amalidan foydalanish kerak:
    • Ko’rsatgich ustida amallar.
        • char * r = new char [5];
        • r++; // r ning keyingi qiymatiga o’tish
        • long * q = new long [53];
        • q++ ; // q ning keyingi qiymatiga o’tish
        • char * r = new char [5];
        • r+=3; // r ning qiymati 3 taga oshadi
        • long * q = new long [53];
        • q+=3 ; // q ning qiymati 12 taga oshadi
    • Inkrement:
    • Konstantaga qo'shish:
    • Massiv va Ko’rsatgichlar.
    • a[3]=4;
    • Massivning nomi – massivning boshlang'ich adresiga ko'rsatkichdir.
        • int a[5]={3,1,8,4,2}; //statik massiv
        • int *p; // ko'rsatkich int b; p = a; // ko'rsatkichga massivning //boshlang'ich adresini o'zlashtirish b = * p; // b = a[0]; b = *(p+2) // b = a[2];
        • int i=3;
        • cout<<“\n a[“<
    • Dinamik massivlar.
    • for ( i = 0; i < N; i++ )
    • cin >> A[i];
    • ...
    • for ( i = 0; i < N; i++ )
    • {
    • A[i] = i;
    • cout << A[i] << " ";
    • }
    • Хotirani bo'shatish:
    • delete [] A;
    • Massivni o'chirish
    • Хotiradan joy ajratish:
    • A = new int[N];
    • elementlar soni
    • int *A;
    • Dinamik massivlar.
    • Хotirani dinamik taqsimlash standart funktsiyalari xotiradan massiv uchun kerak bo'ladigan uzilmas, yaxlit qismini topadi va uning boshlang'ich adresini qaytaradi
        • voidmalloc(Massivning baytdagi o'lchami); voidcalloc(elementlar soni, elementning baytdagi o'lchami);
        • #include  #include 
    • Хotiradan dinamik ob`yektni o'chirish uchun
        • free(ko'rsatkich);
    • Dinamik massivlar.
    • Dinamik massivni tashkil qilish va qiymatlarini kiritish:
        • #include  #include  #include  int main() {  int *a; // massiv boshiga ko’rsatkich int i, n; system("cls"); printf(“Massiv o’lchamini kiriting: "); scanf("%d", &n);
    • Dinamik massivlar.
        • a = (int*)malloc(n * sizeof(int)); // Xotiradan joy ajratish for (i = 0; i// Massiv ni to’ldirish printf("a[%d] = ", i); scanf("%d", &a[i]); } for (i = 0; i// Massivni ekranga chop etish free(a); // Massivni xotiradan o’chirish getchar(); getchar(); return 0; }

    XULOSA

    • Xulosa o’rnida shuni ta’kidlab o’tish joizki, ko’rsatkichlardan o’zgaruvchilarning xotiradagi adresslari orqali qo’llashda foydalaniladi.
    • Xotirani taqsimlash uchun malloc() va calloc() funksiyalaridan foydalaniladi.
    • MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
    • E’TIBORINGIZ UCHUN RAXMAT!
    • QURBONOV NOZIM
    • MUXAMMADRASHITOVICH

    Download 5 Mb.
    1   2   3   4




    Download 5 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Dasturlash 1 swd1316 Ko’rsatkichlar va dinamik xotira bilan ishlash. Dinamik massiv

    Download 5 Mb.