Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2005-07-18 20:45:22

  anonimek - Członek DUG

anonimek
Członek DUG
Skąd: Alwernia
Zarejestrowany: 2005-06-13

wskaźniki -2

Ave , jednego za bardzo nie moge zrozumiec...
main()
{ int *p,n;
scanf("%d",&n);
p=(int*)malloc(n*sizeof(int));   //L1
// p=malloc(n*sizeof(int)); //L2
}
Czym sie różni L1 od L2 ?
Bede wdzieczny za odpowiedz

Offline

 

#2  2005-07-19 19:25:30

  kali - Członek DUG

kali
Członek DUG
Skąd: Wrocław
Zarejestrowany: 2005-06-19
Serwis

Re: wskaźniki -2

W L1 dokonujesz rzutowania na int*, a w L2 nie. Malloc jako taki nie zwaraca wskaźnika na int, czy char, tylko void*. Pamiętam, że chyba pod C był problem z L2, bo kompilator odmawiał domyślnego rzutowania (albo tylko warning wyrzucał? wieeeki całe nie używałem malloca...).

Pozdrawiam,


Intelligence is like a river: the deeper it is, the less noise it makes

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)