1 – dars. C++ Dasturlash tilining kelib chiqishi xaqida ma’lumot


Kursatkichlar va simvolli massivlar



Yüklə 0,69 Mb.
səhifə45/121
tarix02.01.2022
ölçüsü0,69 Mb.
#37187
1   ...   41   42   43   44   45   46   47   48   ...   121
aaaaKitob majmuasiiii

Kursatkichlar va simvolli massivlar.

C ++ tili mualliflari massivlar o’rnida funktsiyalarda ko’rsatkichlardan foydalanishni maslahat beradilar. Shuni ta'kidlab o’tish kerakki massivlar nomlari funktsiya tanasida konstanta deb hisoblanmaydi, Shuning uchun bu ko’rsatkichga ++ va – amallarini qo’llash mumkindir. Misol tariqasida so’zlar bilan ko’rilgan funktsiyalarni faqat ko’rsatkichlardan foydalanilgan variantlarini ko’rib chiqamiz.

Satr uzunligini hisoblash:

Int len (char *s)

{ int m;

for(m=0; *(s+m)!=’\0’;m++)

return m;

}

Keyingi variantda s kursatkichga ++ amali qo’llaniladi:



Int len (char *s)

{ int m;


for(m=0; *s++!=’\0’;m++)

return m;

}

Bir satrdan ikkinchisiga nusha olish:



Void copy(char *c1, char *c2)

{

I=0;



While(*(c1+i)=*(c2+I))1=’0’)

I++;


}

Nol'dan katta qiymat while operatori shartida rost hisoblangani uchun bu dasturni ++ amalini qo’llagan holda qo’yidagicha qisqarok yozish mumkin:

Void copy(char *c1, char *c2)

{

While(*c1++=*c2++);



}

Satrlarni ulash(konkatenatsiya funktsiyasi)

Void concat(char *c1,char *c2)

Int I;


For(m=0;*(c1+I)!=’\0’; m ++)

While((*(c1+m+I)=*(c2+I))

I++;

}

Bu funktsiyaning qisqa varianti:



Void concat(char *c1,char *c2)

While(*c1++);

While(*c1++=*c2++)

}

Ikki satrni o’zaro solitirish:



Bu misolimizda ko’rsatkichlardan har hil foydalanish usullari ko’rsatiladi:

Int row(char c1[], char c2[])

{ int I,m1,m2;

for(m1=0; *(c1+m1)=’\0’;m1++);

for(m2=0;*(c2+m2)=’\0’,m2++)

if (m1!=m2) return -1;

for(I=0;I

if (*c1++ !=*c2++) return (I+1);

return 0;

Bu funktsiya qo’yidagi qiymatlarni qaytaradi:

Agar satrlar uzunligi har hil bulsa 0;

Agar hamma simvollar mos kelsa 0;

Agar simvollar mos kelmasa birinchi mos kelmagan simvol nomeri.


Yüklə 0,69 Mb.

Dostları ilə paylaş:
1   ...   41   42   43   44   45   46   47   48   ...   121




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