Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

?: uslovni operator

[es] :: C programiranje :: ?: uslovni operator

[ Pregleda: 1137 | Odgovora: 7 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Nibble

Član broj: 63173
Poruke: 293
*.dlp267.bih.net.ba.



Profil

icon ?: uslovni operator03.01.2006. u 12:55

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?
03.01.2006. u 12:55 

vladab
Vladimir Bašanović
Beograd

Član broj: 9512
Poruke: 496
212.200.116.*



Profil

icon Re: ?: uslovni operator03.01.2006. u 13:12
da_li_je_ovo_tacno?ako_jeste_uradi_ovo:ako_nije_onda_uradi_ovo_drugo;

:O)
Seven deadly sins
Seven ways to win
Seven holy paths to hell
And your trip begins

Seven downward slopes
Seven bloodied hopes
Seven are your burning fires,
Seven your desires...
03.01.2006. u 13:12 

Mali Misha
Mihajlo Anđelković

Član broj: 79396
Poruke: 313
*.powernet.bg.

ICQ: 195487525


Profil

icon Re: ?: uslovni operator03.01.2006. u 13:41
Primer
Code:
int sgn(double x)
{ return x < 0 ? -1 : !!x;}

Dim di dam...
03.01.2006. u 13:41 

Nibble

Član broj: 63173
Poruke: 293
*.dlp498.bih.net.ba.



Profil

icon Re: ?: uslovni operator03.01.2006. u 13:47
Citat:
Mali Misha: Primer
Code:
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?
03.01.2006. u 13:47 

fearless

Član broj: 74584
Poruke: 155
212.62.59.*

Sajt: www.phearless.org


Profil

icon Re: ?: uslovni operator03.01.2006. u 13:48
Konkretan primer:

Code:
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 :)


[Ovu poruku je menjao fearless dana 03.01.2006. u 14:49 GMT+1]
Phearless - Serbian/Croatian Security Magazine: www.phearless.org
03.01.2006. u 13:48 

Mali Misha
Mihajlo Anđelković

Član broj: 79396
Poruke: 313
*.powernet.bg.

ICQ: 195487525


Profil

icon Re: ?: uslovni operator03.01.2006. u 14:01
Citat:
Mali Misha: Primer
Code:
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)
     )
   )
   ;
}


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.
Dim di dam...
03.01.2006. u 14:01 

#Ninja#
Tuzla

Član broj: 28925
Poruke: 250
*.bih.net.ba.



Profil

icon Re: ?: uslovni operator03.01.2006. u 23:55
A ? B : C

Ekvivalent:

if A
B;
else
C;
03.01.2006. u 23:55 

Mali Misha
Mihajlo Anđelković

Član broj: 79396
Poruke: 313
*.powernet.bg.

ICQ: 195487525


Profil

icon Re: ?: uslovni operator04.01.2006. u 00:10
To, plus ima krajnju vrednost izraza B ili C, u zavisnosti od toga kojeg izvrsi.
Dim di dam...
04.01.2006. u 00:10 

[es] :: C programiranje :: ?: uslovni operator

[ Pregleda: 1137 | Odgovora: 7 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.