Stranica: 1/2.
[c] Scanf
Postano: 08 ožu 2013, 20:45
Postao/la Nele
Da li ima razlike izmedju koristenja naredbi?
scanf("%d",&a);
scanf("%d",a);
Re: [c] Scanf
Postano: 08 ožu 2013, 20:51
Postao/la shrike
jep, ovaj drugi neće raditt

Re: [c] Scanf
Postano: 08 ožu 2013, 21:50
Postao/la Medojedni jazavac
Shrike, prebrz si na odgovoru.
Ima razlike.
Scanf je posebna c funkcija koja prima parametre u obliku
Kod: Označi sve
scanf(const char *format, arg_1, arg_2, ..., arg_n)
Posebno je bitno da su svi argumenti ustvari pokazivaci.
Na primjeru ti budem pokazal.
Ako imas tip integer koji upisujes, stavit ces "&a", zato sto "a" po tipu nije pokazivac, vec integer, a funkcija zahtjeva da joj ti das pokazivac, odnosno adresu na kojoj se nalazi "a". Adresa se dobije pomocu operatora "&":
Kada bi imal pokazivac onda pises ovako:
int* a;
scanf("%d", a);
Napomena: Da bi ovo kuzil, trebas kuzit pokazivace, te predavanje argumenta funkciji(odnosno razliku izmedju "call by value" i "call by reference")
Re: [c] Scanf
Postano: 08 ožu 2013, 22:00
Postao/la shrike
istina, imaš pravo. optimiziram odgovore za raznu pitanja (tipa, tko pita to pitanje vjerojatno ne kuži int* a).
Re: [c] Scanf
Postano: 08 ožu 2013, 22:35
Postao/la drone
Meni ljepši int *a; od int* a;

Re: [c] Scanf
Postano: 08 ožu 2013, 22:42
Postao/la max360se
int * a; je još ljepši

Re: [c] Scanf
Postano: 08 ožu 2013, 22:44
Postao/la Medojedni jazavac
drone je napisao/la:Meni ljepši int *a; od int* a;

Ma ja volim pisat tak jer ista/jako slicna sintaksa radi jako razlicite stvari. Ne znam, da je po meni nekak bi se drukce napravili ili zadavanje tipa pokazivaca ili adresiranje vrijednosti.
Re: [c] Scanf
Postano: 08 ožu 2013, 22:52
Postao/la drone
Da, slažem se. Izgubiš se s tim, pogotovo ako praviš strukture i čudesa

Re: [c] Scanf
Postano: 09 ožu 2013, 00:33
Postao/la jasox
ja koristim int *a;
zasto ?
int* a, * b; // ne valja brate ovo
int *a, *b; // ah nice
Re: [c] Scanf
Postano: 09 ožu 2013, 00:40
Postao/la drone
max360se je napisao/la:int * a; je još ljepši

A nije, taj izgleda kao množenje.
Zapravo ne valja ni jedan. Loše je imati "uninitialized" pointere.