PDA

Tam Sürümünü Görmek İçin : return type bir dizi olmasını istersek


ankakusu
15/08/2007, 11:54
return type bir dizi olmasını istersek
bunu cpp de nasıl ifade ederiz?

mesela:

int [] fonksiyon ( int dizi[] ,int sayı1, int sayı2 )

kodundaki yanlış şey ne? Çünkü hata veriyor
derleyici...


golgepapaz
15/08/2007, 13:54
fonksiyonlardan dizi donemezsin, ama dizinin baslangic adresine bir isaretci donebilirsin.

yani

int [] fonksiyon ( int dizi[] ,int sayı1, int sayı2 )

yerine

int * fonksiyon ( int dizi[] ,int sayı1, int sayı2 )

ayni sey ... bu arada eger diziyi fonksiyonun icinde yarattiysan yine geri donemezsin
cunku fonksiyon ciktiktan sonra dizi hemen silinecektir.. Onun yerine ici doldurulmasi gereken diziyi sen disardan gonderirsen daha dogru olur....

sekizbit
15/08/2007, 23:32
sayın golgepapazın dediği gibi fonksiyondan dizi dönmez en güzel yöntep pointer kullanmaktır.

fakat yine golgepapazın dediği gibi fonksiyonda oluşturduğun dizi fonksiyonun işlevi bittiğinde ölür. Bunu kalıcı yapmanın iki yöntemi var birincisini golgepapaz yine söylemiş :)

ikincisi için kalıcı bellek ayırman gerekir. Malloc işlemine bi bak..

quasimodo
16/08/2007, 22:58
static keyword ude isine yarayabilir...