Mustaqil ish Mavzu: С/С++ дастурлаш тилида кўрсаткичлар билан боғлиқ муаммолар. Dasturiy vositalar xavfsizligi


Download 348.42 Kb.
bet9/9
Sana21.04.2023
Hajmi348.42 Kb.
#1374143
TuriПрограмма
1   2   3   4   5   6   7   8   9
Bog'liq
mustaqil-ish

{
x1=x2=-b/(2*a); return 1;
}
else
{
x1=(-b+sqrt(D))/(2*a);
x2=(-b-sqrt(D))/(2*a); return 2;
}
}
int main()
{
float a,b,c,D,x1,x2;
cout<<”ax^2+bx+c=0 tenglama ildizini topish. ”; cout<<”\n a - koeffisiyentni kiriting: ”; cin>>a; cout<<”\n b - koeffisiyentni kiriting: ”; cin>>b; cout<<”\n c - koeffisiyentni kiriting: ”; cin>>c; switch (Kvadrat_Ildiz(a,b,c,x1,x2))
{
case 0: cout<<“Tenglama haqiqiy ildizga ega emas!”; break;
case 1: cout <<“Tenglama yagona ildizga ega: ”; cout<<”\n x= “<
break;
default:cout<<“Tenglama ikkita ildizga ega: ”; cout<<”\nx1= “<
cout<<”\nx2= “<
}
return 0;
}
Программадаги Kvadrat_Ildiz() функцияси квадрат тенглама илдизини ҳисоблайди. Унинг қайтарадиган қиймати тенгламанинг нечта илдизи борлигини англатади. Агар тенгламанинг ҳақиқий илдизи мавжуд бўлмаса (D<0), функция 0 қийматини қайтаради. Агар D=0 бўлса, функция 1 қийматини қайтаради. Агар D>0 бўлса функция 2 қийматини қайтаради. Мавжуд илдизлар - x1 ва х2 адрес олувчи параметрларда қайтарилади.

Осма (Dandling) кўрсаткич

  • Бу кўрсаткич (pointer) мавжуд бўлмаган объектни кўрсатади.

  • Бу эса хотира хавфсизлигида жиддий муаммо ҳисобланади.

  • Осма кўрсаткичлар объектларни йўқ қилиш вақтида пайдо бўлади.

  • Кўрсаткич қиймати ўзгартирилмасдан мурожаат мавжуд объект ўчирилса ёки қайта жойлаштирилганда, ушбу кўрсаткич қайта жойлаштирилган хотира жойлашувини кўрсатади.

  • Мазкур ҳолда осма кўрсаткич операцион тизим коди ёки дастур коди мавжуд бўлган хотирага мурожаат қилиши мумкин.

  • Агар ушбу кўрсаткичга қиймат берилса, у дастур ёки операцион тизим кўрсатмалари қийматини ўзгартиради ва бундай ҳолда дастур нотўғри қийматни кўрсатиши ёки ўз ишини тўхтатиши мумкин.



\

Осма (Dandling) кўрсаткич: ҲИМОЯ
Ушбу ҳолатни олдини олиш учун курсаткичнинг қийматини NULL қийматга ўрнатиш керак бўлади. Агар кўрсаткич қиймати NULL ўрнатилса, у ҳолда осма кўрсаткич ҳолати пайдо бўлмайди. Кўрсаткичга NULL қийматни беришнинг маъноси у ҳеч қандай хотира манзилини кўрсатмаслигини англатади





Download 348.42 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling