Citiraj:
Autor mc_fish
kako nemoze? scanf("%s",&string); ne radi?
nauci raditi sa (f)scanfom i (f)prinfom...nije on samo %d,%f i %c
|
scanf("%s", ...) ocekuje varijablu tipa char*, a ne String. scanf je izvorno funkcija Ca, a u njemu niti ne postoji String tip podataka. Umjesto toga koristi se char array.
Sama funkcija scanf je dosta "agresivna" i sarat ce po memoriji kolko god treba. Sto se nje tice mozes ti zapisat %s i u varijablu tipa int (ako to kompajler dozvoli). No, to ne znaci da radis ispravnu stvar. Dakle, scanf se ne moze koristiti za zapisivanje u string, nego samo u char array.
Citiraj:
Autor mc_fish
tako nekako...mada mislim(ja osobno) da je kvalitetnije koristiti void main() kada se vec nista s njim ne radi
|
void main() nikako i nikada nije dobra stvar. To u nekim (relativno rijetkim) situacijama moze dovesti do nekih zlih i nedobrih stvari. Cak se ni prema ANSI standardu void main() ne bi nikada trebao koristiti. Net je prepun clanaka u kojima je objasnjeno zasto je void main() nepozeljan.
Ako nista drugo, trebalo bi iz ciste pristojnosti vratiti nekakav status operativnom sustavu nakon sto se tvoj program zavrsi. A ne da jadni OS ostane zbunjen, pitajuci se sto se, dovraga, desilo tvome programu...
Citiraj:
Autor mc_fish
mozes ali uz uvijet da uvrstis odgovarajucu bibliotekicu... nadalje zasto koristiti cin/cout ako ne radis s objektima tj c++,c#?!
|
cin i cout bas i nemaju neke veze s objektima, ali imaju veze sa stringovima. Dakle, ako se koristi tip podataka String, onda se trebaju koristiti i cin i cout.