bozoo Geschrieben 5. November 2001 Geschrieben 5. November 2001 Tach Forum, kannst Du mir sagen, weshalb er mir hier nur Mist übergibt? Die auskommentierte Ausgabe ist OK. Das gleiche im Hauptprogramm gibt alle ASCII-Werte aus..... Gruss Volkaman! int main(int argc, char *argv[]) { char path[255]; path[255] = pfad(argv[1]); } char pfad(char k[]) { int laenge = 0; int anz =0; char s[255]; str_cpy(s, k); for (int i = 0; s[i] != '\0'; i++) { laenge++; } int y = laenge; for (y; s[y]!= char(92); y--) { anz++; } laenge = laenge - anz; s[laenge]= '\0'; // cout << " da:" << s <<endl; return s[255]; } :mad:
Dagegen Geschrieben 5. November 2001 Geschrieben 5. November 2001 kann sein das ich dich jetzt falsch versteh aber: mach die funktion vor main bekannt, etwa so: char pfad(char * k) und dann dein Teil: main() { . . . } char pfad(char k[]) { . . . }
DocMabuse Geschrieben 5. November 2001 Geschrieben 5. November 2001 Hm, also mal sehen... for (int i = 0; s[i] != '\0'; i++) { laenge++; } Mit dieser Zählschleife willst Du doch sicher die Länge des Arrays ermitteln, oder? Warum verwendest Du dann nicht die Funktion "strlen" aus der "string.h"? So wie ich das sehe, gibst Du zum Schluss nur einen einzigen char zurück, nämlich den an der Stelle 255 (bzw. 256 wenn man bedenkt, dass wir ja bei 0 anfangen zu zählen ). Wenn Du den ganzen String (bzw. das Array) zurückgeben willst, würde ich mit Pointern arbeiten. Ich hoffe, dass Dir das hilft. Sollte es wider Erwarten falsch sein, was ich geschrieben habe, dann bitte nicht übel nehmen, denn: 1. Es ist Montag, und 2. ich habe gleich Feierabend. Grüsse! DocMabuse
bozoo Geschrieben 7. November 2001 Autor Geschrieben 7. November 2001 Hab's schon erledigt. Der Fehler war.....ähhh keine Ahnung. Das mit den Prototypen und dem str_len war ja eh klar. Merci!!!
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden