Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

Prioriteti operatora ++ i * u C-u
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Računarski praktikum 1
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
vsego
Site Admin
Site Admin


Pridružen/a: 06. 10. 2002. (22:07:09)
Postovi: (355F)16
Spol: zombi
Sarma = la pohva - posuda
854 = 1068 - 214
Lokacija: /sbin/init

PostPostano: 12:33 pet, 9. 4. 2004    Naslov: Prioriteti operatora ++ i * u C-u Citirajte i odgovorite

Doslo je do mene pitanje koji od operatora * (dereferenca) i ++ (sljedbenik) imaju prioritet. :) Konkretno, da li ce ovaj program ispisati danu rijec slovo po slovo? :-k

[code:1]int main (void) {
char *pero="Pero", *p, ch;

p = pero;

while (ch = *p++) printf("%c\n", ch);
printf("%s\n", pero);

return 0;
}[/code:1]

Odgovor je: [b]hoce![/b] =D> Zasto? :-k

Operatori * i ++ imaju [b]isti prioritet[/b], ali se evaluiraju [b]s desna na lijevo[/b] :!: Zato se prvo izvede ++, pa tek onda *.

Dakle, "[i]ch = *p++[/i]" je ekvivalentno "[i]ch = *(p++)[/i]", a [b]NE[/b] " [i]ch = (*p)++[/i]". :D

Vise prioritetima operatora mozete saznati [url=http://gd.tuwien.ac.at/languages/c/programming-dmarshall/node4.html#SECTION00490000000000000000]ovdje[/url]. 8)
Doslo je do mene pitanje koji od operatora * (dereferenca) i ++ (sljedbenik) imaju prioritet. Smile Konkretno, da li ce ovaj program ispisati danu rijec slovo po slovo? Think

Kod:
int main (void) {
  char *pero="Pero", *p, ch;

  p = pero;

  while (ch = *p++) printf("%c\n", ch);
  printf("%s\n", pero);

  return 0;
}


Odgovor je: hoce! Applause Zasto? Think

Operatori * i ++ imaju isti prioritet, ali se evaluiraju s desna na lijevo Exclamation Zato se prvo izvede ++, pa tek onda *.

Dakle, "ch = *p++" je ekvivalentno "ch = *(p++)", a NE " ch = (*p)++". Very Happy

Vise prioritetima operatora mozete saznati ovdje. Cool



_________________
U pravilu ignoriram pitanja u krivim topicima i kodove koji nisu u [code]...[/code] blokovima.
Takodjer, OBJASNITE sto vas muci! "Sto mi je krivo?", bez opisa u cemu je problem, rijetko ce zadobiti moju paznju.
Drzim prodike
[Vrh]
Korisnički profil Pošaljite privatnu poruku
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 2. godine -> Računarski praktikum 1 Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Možete otvarati nove teme.
Možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You can attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan