also meine Aufgabe war es, die strcpy funktion selber zu schreiben. Das hat auch geklappt, nur hab ich keine Ahnung was mein programm da jetzt genau macht.
 
Code: Alles auswählen
char * my_strcpy(char *dest, const char *src);
int main(){
   char src[]= "quelle";
   char dest[] = "ziel";
   my_strcpy(dest, src);        // funktionsaufruf
   printf("my_strcpy %s\n" , dest);
    system("PAUSE");
    return 0;
}
char * my_strcpy(char *dest, const char *src){                    // String kopiern
     int len = strlen(src);
          
     int i, j;
     len +=1;
     
     for(i=0; i<len; i++){
              for(j=i; j<=i; j++){
              dest[i]=src[j];
              }
     } 
     
   return dest;
     
}
Und ist mein Funktionsaufruf richtig? Brauch ich da nicht & vor dest und src? So übergeb ich doch nur variablen und keine Adressen, aber das ding funktioniert.
 Aja, und egal was ich bei return hinschreibe, ob dest, bier oder egal, es wird immer das richtige ausgegeben.
 Aja, und egal was ich bei return hinschreibe, ob dest, bier oder egal, es wird immer das richtige ausgegeben.Bitte um Hilfe, Danke!



 Ich dachte, wenn ich in der Funktion mit Zeigern arbeite, ändert meine my_strcpy Funktion auch die Strings in der Main Funktion. Also bei mir z.B dest[]. Wo "geht" dann der Rückgabeparameter hin, bzw auf was zeigt das?
 Ich dachte, wenn ich in der Funktion mit Zeigern arbeite, ändert meine my_strcpy Funktion auch die Strings in der Main Funktion. Also bei mir z.B dest[]. Wo "geht" dann der Rückgabeparameter hin, bzw auf was zeigt das?
