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

SizeOF pokazivac

[es] :: C/C++ programiranje :: C/C++ za početnike :: SizeOF pokazivac

[ Pregleda: 1440 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

azzpoz

Član broj: 300637
Poruke: 96



+1 Profil

icon SizeOF pokazivac16.04.2013. u 21:58 - pre 134 meseci
Code:
  char *niz[2]={"azz"};
    char niz2[2];
    double *pokazivac=NULL;
    char *pokazivac2=NULL;
    cout<<"\n\t -> "<<sizeof(niz);
    cout<<"\n\t\t -> "<<sizeof(niz2);
    cout<<"\n -> "<<sizeof(pokazivac)<<"\t pokazivac2(char) -> "<<sizeof(pokazivac2)<<endl;
    


Pretraživao sam po internetu i nisam siguran zašto je pokazivač uvijek veličine 4!

Da li je pokazivač "SISTEMSKE(konstantne)" veličine određen sistemom, u ovom slučaju OS-om 32bitni???
 
Odgovor na temu

Mihajlo Cvetanović
Beograd

Moderator
Član broj: 37636
Poruke: 1249



+96 Profil

icon Re: SizeOF pokazivac17.04.2013. u 09:29 - pre 134 meseci
Sam C standard ne propisuje koliki će pokazivač da bude, i to je ostavljeno piscima kompajlera da odaberu. Najčešće prati arhitekturu, pa je 32-bitni u 32-bitnom procesu i 64-bitni u 64-bitnom. Obrati pažnju da ako napraviš 32-bitnu aplikaciju i onda je pokreneš na 64-bitnom Windowsu, pointer će i dalje biti 32-bitni. Postoje izuzeci u vezi sa veličinom pointera, ali tiču se nekih egzotičnih hardvera za koje verovatno nikad nećeš pisati softver.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: SizeOF pokazivac

[ Pregleda: 1440 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

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