![]() |
Frage zu C Quellcode
Hallo,
da ich mich in C so gut wie überhaupt nicht auskenne habe ich mal eine Frage zu folgenden Code. 1. Was bewirken die "*" oder "!*" vor den Variablen? 2. Was macht die Function "!strnicmp", konnte dazu nichts in der Delphi Hilfe finden.
Code:
Ihr seht, mir fehlt noch total der Durchblick, aber ich denke ihr könnt das ändern :wink:
cmd = buffer;
while (*cmd && *cmd < ' ') cmd++; //Was macht die Schleife??? if (!*cmd) continue; if (!strnicmp(cmd, "USER ", 5)) { ptr = cmd+5; NEXTWORD(ptr); strcpy(username, ptr); #ifdef CONSOLE_OUT con_out("ftp_parse_t(): username = %s\n", username); #endif net_send(cli_sock, "331 Password required for %s.\r\n", username); } Bei dem Codeschnipsel handelt es sich übrigens um den Login Part eines FTP Servers. Mfg Salomon |
|
Hi Luckie,
den Unterschied zwischen Variablen und Functionen kenne ich schon recht lange. Wenn du richtig lesen könntest würdest du sehen, das ich nirgends behauptet habe das "strnicmp" eine Variable ist 8) Zitat:
zu 4. Wo bekomme ich eine C Doku her? OK bin schonmal um einen Operator weiter, bleiben jedoch noch etliche :? Mfg Salomon |
Ich hätte schwören können, ich hätte Variable gelesen. Aber OK, sorry.
Es gibt Freeware C/C++ Kompiler, da müßte auch eine Doku dabei sein. Und wenn du sowas öfters brauchst, dann wäre ein C/C++ Buch angebracht und etwas Einarbeitung in die Sprache. Habe ich auch schon gemacht. Nur bin ich, wenn es mit den Zeigern zu sehr abdrehte, bisher immer ausgestiegen. Und zur Not bemüh mal Google. |
Kein Problem :wink:
C liegt mir auch nicht so, daher programmier ich ja in Delphi :D Werde mir jetzt mal bei google etwas über die grundlegenden Operatoren suchen. Weitere Erläuterungen des Quelltext wären natürlich super. |
Zitat:
Zitat:
Zitat:
MfG, d3g |
Danke für die Erklärung. Du hast recht, "Buffer" ist als Char[Buffersize] deklariert.
Ich habe noch eine Frage zu folgender Zeile:
Code:
Dort wird der zweite String mit"\r\n" terminiert. Ist das vergleichbar mit CRLF, also #10 + #13 ?
net_send(cli_sock, "331 Password required for %s.\r\n", username);
Mfg Salomon |
Zitat:
|
Super, danke für den Hinweis. Ich bin schon echt verzweifelt gewesen warum der Server mich nicht verstehen will. Es lag an dem vertauschten CR LF. Danke :spin:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz