Moze li mi ko objasniti ovaj operator.Nemogu nikako da shvatim njegovu namjenu.Da li moze neko navesti neki primjer gdje se koristi ovaj operator?
?: uslovni operator
Zaključano
Zakačeno
da_li_je_ovo_tacno?ako_jeste_uradi_ovo:ako_nije_onda_uradi_ovo_drugo;
:O)
:O)
Primer
Code:
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
Potpis
Ipak se ++uje.
Citat:
Mali Misha: Primer
Code:
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
znaci ovdje bi vratio -1 ako je x > 0 a ako je x < 0 vratio bi !x.
Jesam li upravu?
izmenjeno 1 put, poslednji put fearless 03.01.2006. u 14:49
Izmene poruke
- fearless03.01.2006. u 14:49zapis iz teksta poruke
Konkretan primer:
Dakle, ukoliko je zadata putanja do fajla (npr. /home/shatter/test) ovo ce izdvojiti 'test'. Ovaj primer
sam dao jer sam pre 15 minuta pisao stvar koja je koristila to ;)
Mada ti je i vladab sve rekao :)
Code:
strncpy(filename, (strrchr(argv[1], '/') ? strrchr(argv[1], '/') + 1 : argv[1]), sizeof(filename));
strncpy(filename, (strrchr(argv[1], '/') ? strrchr(argv[1], '/') + 1 : argv[1]), sizeof(filename));
Dakle, ukoliko je zadata putanja do fajla (npr. /home/shatter/test) ovo ce izdvojiti 'test'. Ovaj primer
sam dao jer sam pre 15 minuta pisao stvar koja je koristila to ;)
Mada ti je i vladab sve rekao :)
Potpis
Phearless - Serbian/Croatian Security Magazine: www.phearless.org
Citat:
Mali Misha: Primer
Code:
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
int sgn(double x)
{ return x < 0 ? -1 : !!x;}
Ako je x < 0, vraca -1, u suprotnom !!x. Ove operatore mozes i nadovezivati:
Code:
int sgn(double x)
{
return
//A
(
(x < 0) ? (-1) :
// B
(
(x > 0) ? (1) : (0)
)
)
;
}
int sgn(double x)
{
return
//A
(
(x < 0) ? (-1) :
// B
(
(x > 0) ? (1) : (0)
)
)
;
}
A: "Ako je x < 0, vrati -1 a ako ne onda B"
B: "ako je x > 0, vrati 1, a ako ne onde 0"
Sve zagrade ( '(' i ')' ) u primeru su nepotrebne.
Potpis
Ipak se ++uje.
A ? B : C
Ekvivalent:
if A
B;
else
C;
Ekvivalent:
if A
B;
else
C;
To, plus ima krajnju vrednost izraza B ili C, u zavisnosti od toga kojeg izvrsi.
Potpis
Ipak se ++uje.