alebo skús upraviť prototyp funkcie z pôvodnej:
Kód:
fraction newfraction(int citatel, int menovatel)
na:
Kód:
int newfraction(int citatel, int menovatel, fraction* res)
Potom v tele tejto funkcie výsledok nevrátiš cez return, ale pomocou pointera
res. A v návratovej hodnote funkcie bude buď 1 (všetky operácie sa vykonali správne) alebo 0, ak vznikla chyba (teda aj nula v menovateli). Čiže volanie tejto funkcie z main by vyzeralo takto:
Kód:
fraction a, b;
if ( !newfraction(5, 2, &a) ) {
// patricne osetrenie v pripade chyby
}
// a ak ti môžem poradiť, trocha formátuj text, je to dosť neprehľadné. Za každým blokom vo funkcii daj nový riadok, za každou funkciou dva nové riadky, za každým vnorením tabulátor. Hneď to bude krajšie vyzerať