Anzeige:
Ergebnis 1 bis 5 von 5

Thema: C Frage zu Code schnippsel

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    24.03.2013
    Ort
    Dortmund-Wickede
    Beiträge
    4
    Hallo!

    *out und *in sind die char-Zeiger die auf die Zeichenketten zeigen.
    In der Funktion gibts dann zwei Pointer, die beide Arrays durchlaufen

    Code:
    unsigned int str_copy(char *out,const char *in) {
      register char* s=out;              // der Pointer "s" durchläuft das Array "out"
      register const char* t=in;        // der Pointer "t" durchäluft das Array "in"
    
      for (;;) {                  // Endlosschleife: bricht erst ab, wenn es ein 
                                    // break gibt 
    
        if (!(*s=*t)) break; ++s; ++t;    
                  // Der Inhalt von s wird auf den Inhalt von t gesetzt, d.h. t wird stückweise in s kopiert.
                  // Wenn es dabei einen Fehler gibt, wird mit "break aus der for-Schleife gesprungen
                  // Ansonsten werden s und t um 1 erhöht und zeigen auf den nächsten Buchstaben im String   
    
        if (!(*s=*t)) break; ++s; ++t;    // unnötig, da es eh wiederholt wird
        if (!(*s=*t)) break; ++s; ++t; 
        if (!(*s=*t)) break; ++s; ++t; 
      } 
      return s-out;              // Position von Zeiger "s" MINUS Position von "out" 
                                     // entspricht der Länge des Wortes
    }
    Geändert von Monadic512 (25-03-2013 um 10:17 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •