int sum (int n, int a[] )
{int i, int s=0;
for( i=0; i
s+=a[i];
return s;
}
Satrlar parametrlar sifatida char[] tipidagi bir o’lchovli machssivlar sifatida uzatilishi mumkin. Bu xolda satr uzunligini aniq ko’rsatish shart emas.
Misol:
//simvollar sonini xisoblash
int strlen ( char a[])
{ int iq0; while(a[i++]);
return i;}
Dinamik massivlar
O’zgaruvchi o’lchamli massivlarni shakllantirish ko’rsatkichlar va xotirani dinamik taqsimlash vositalari yordamida tashkil etiladi.
Xotirani dinamik taqsimlash uchun new va delete operatsiyalardan foydalaniladi. Operatsiya
new ()
tip ismi orqali belgilangan ma’lumotlar tipiga mos keluvchi o’lchamli bo’sh xotira qismini ajratish va unga murojaat etish imkonini beradi. Ajratilgan xotira qismiga initsializator orqali aniqlangan qiymat kiritiladi. Xotira ajratilsa xotira ajratilgan qismining bosh adresi qaytariladi, agarda xotira ajratilmasa NULL qaytariladi.
new operatsiyasi orqali oldindan ajratilgan xotira qismi delete operatsiyasi yordamida bo’shatiladi.
Misollar:
int *i; i=new int(10);
delete i;
Operatsiya
new ()
O’zgaruvchilar massiviga xotira ajratishga imkon beradi.
Misollar:
int *mas=new[5];
delete [] mas;
skalyar o’zgaruvchilarga xotira ajratilish 1 misolda ko’rsatilgan..
Matritsani shakllantirishda oldin bir o’lchovli massivlarga ko’rsatuvchi ko’rsatkich massivlar uchun xotira ajratiladi, keyin esa parametrli tsiklda bir o’lchovli massivlarga xotira ajratiladi.
Misol:
int n,m; cin>>n;
matr=new int*[n];
for (i=0;i
{cin>>m;
matr[i]=new int[m];
Xotirani bo’shatish uchun bir o’lchovli massivlarni bo’shattiruvchi tsiklni bajarish zarur.
Do'stlaringiz bilan baham: |