Char Problem
-
HI!
Dann müsste es doch eigentlich so stimmen:
int main(int argc, char *argv[]) { char * command; strcpy(command, argv[1] + argv[2]); return EXIT_SUCCESS; }
Das funtz aber auch nicht....
Muss ich noch extra header einbinden?
-
Was du machst ist, dass du 2 char-Pointer miteinander addierst.
Versuch folgendes:
sprintf("%s%s", argv[1], argv[2]);
-
HI!
So hats auch nicht geklappt habs jetzt aber hinbekommen.
Mit StrCat() damit funtzt.
Aber trotzdem danke gell
-
Entschuldige, ich hab vergessen, dass die Funktion auch einen Buffer benötigt.
char buffer[200]; sprintf(buffer, "%s%s", argv[1], argv[2]);
-
HI!
Jetzt hab ich deinen Code mal versucht
char command[500]; sprintf(command, "%s%s", argv[1], argv[2]); cout << command;
Aber wenn ich dass Kompilieren will haut mein Compiler (gmake in KDevelop 2.1)
Folgende Fehlermeldung raus:
main.cpp: In function `int main (int, char **)': main.cpp:69: universal-character-name `\u00a0' not valid in identifier main.cpp:69: universal-character-name `\u00a0' not valid in identifier main.cpp:69: sorry, not implemented: universal characters in identifiers main.cpp:69: `_argv' undeclared (first use this function) main.cpp:69: (Each undeclared identifier is reported only once for each function it appears in.)
-
Ich hab keinen Schimmer was der Compiler mit "universal-character-name `\u00a0' not valid in identifier" meint. Zeile 69, welche der drei Zeilen ist das aus dem Code den du angegeben hast?
-
Es ist der sprintf ausdruck (die zeile 69)
Leider funtz das mit StrCat() auch nicht weil der irgendwie kein normalen Char-Pointer und ein Char-Point-Array zusammensetzten kann.
Bitte bitte helft mir es ist verdammt wichtig
Aber, Azis der ausdruck den ich als letztes beschrieb ist doch so richtig oder?
-
Ich habs jetzt ausprobiert und es funktioniert...
Heißt die Variable ganz sicher "argv" und nicht vielleicht "_argv" ?
Ansonsten kann ich dir nicht viel helfen weil du einen Compiler hast, den ich nicht verwende...
-
HI!
Also eigetnlich heisst sie argv so wie ichs sagte.
das sind halt die Paramenter die an die App. übergeben werden.Anzahl "int argc" und inhalt "char * argv[int param_index]"
Und wenn man z.b. cout << argv[1]; aufruft und die App so gestartet hat:./meineapp Hallo
Wird Hallo ausgegeben, also müsste es schon stimmen
-
Hast du <stdio.h> included?
-
#include <string> using namespace std; int main(int argc, char* argv[]) { string a = argv[0], b = argv[1]; string c = a + b; }
Oder bist du wirklich sicher, dass du char* verwenden willst/musst?