[ YARDIM ] Neden hata veriyor?

ermess
19-12-2010, 13:35   |  #1  
OP Üye
Teşekkür Sayısı: 0
57 mesaj
Kayıt Tarihi:Kayıt: Kas 2010

#include
#include
   void karakterkaydirekranayaz(char *,int);
   void karakterkaydirekranayaz(char *chdizi,int diziboyu) {
        int i,j=0;
        for(j=0; j
                 for(i=j; j
                 printf("%c",*(chdizi+i));
                 }
                
                 for(i=0; i
                 printf("%c",chdizi);
                 }
                 printf("\n");
                 }
                 int main() {
  
                 char karakter[5]={'d','u','n','y','a'};
                 int boy;
                 void karakterkaydirekranayaz(karakter,boy);
                 getch();
                 return 0;
                 }
Nden hata veriyor?????*

Son Düzenleme: Serkan Karadaş ~ 19 Aralık 2010 15:00
muh34
19-12-2010, 23:26   |  #2  
Yıllanmış Üye
Teşekkür Sayısı: 0
215 mesaj
Kayıt Tarihi:Kayıt: Eki 2010

Forum sayfasından kaynaklanan sorun geregi,yazmıs oldugunuz for donguleri tam olarak cıkmamış.Ancak kodun calısmamasında(derleme acısından) goze carpan tek neden,karakterkaydirdirekekranayaz() fonksiyonunun cagrı hatasıdır.bir fonksiyonu cagırmak icin,fonksiyon adı ve argumanlarını yeterlidir.Fonksiyonun donus tipi yazılmaz,şayet yukarıdaki gibi yazılırsa,derleyici aynı fonksiyonu birden fazla tanımladıgınızı anlayarak hata verecektir.Bir fonksiyonun tanımlandıgı ve cagrıldıgı noktaları hatırlar isek,
Donus_tipi fonksiyon_isim (// parametreler...) {} -> Tanımlanan nokta
fonksiyon_isim(// argumanlar ...); -> cagrı noktası

yukarıdaki gibi yazıldıgını anımsayacagız.main() fonksiyonu icerisinde void donus tipini silerek programınızı yeniden derlemeyi deneyiniz.Kodun diger bolumleri tam olarak cıkmadıgı icin bir şey soylemek imkansız,ancak yine sorun devam ederse kodunuzun eksik cıkan yerlerini tamamlayarak tekrar sorabilirsiniz.

Başarılar