Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » argv[1] == "?" -> Error

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
14.01.2004, 13:21 Uhr
ai-tee



Wie macht mans richtig?
--
Greetz, ai`tee
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.01.2004, 13:26 Uhr
virtual
Sexiest Bit alive
(Operator)


strcmp(argv[1], "?")==0 -> Error
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.01.2004, 13:53 Uhr
ai-tee



Und bei Zuweisung?


C++:
field2 = argv[1]; // geht dann wohl auch nicht, wa? :)



Und btw. warum printf und nicht cout? Was sind die Unterschiede? Oder was ist warum besser ... oder ... whargs ... warum ... was ...

ahhhh ... unser Lehrer hat uns Schrott beigebracht :/
--
Greetz, ai`tee
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.01.2004, 13:58 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:


C++:
field2 = argv[1];




gehen tuts unter umständen schon...es hat warhscheinlich blos nicht den von dir gewünschten erfolg
in dem fall lässt du dann field2 (so es denn ein charpointer ist) auf argv[1] zeigen, es wird allerdings nicht der inhalt kopiert...
das geht mit z.b. mit sprintf,strcpy, ner eigenen schleife oder was was ich womit noch alles


Zitat:

Und btw. warum printf und nicht cout


das eine ist c das andere c++
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.01.2004, 15:20 Uhr
kronos
Quotenfisch
(Operator)



Zitat:
btw. warum printf und nicht cout? Was sind die Unterschiede? Oder was ist warum besser ... oder ... whargs ... warum ... was ... ahhhh ...

*ROFL*
darf ich das in meiner signatur zitieren?

zeig' mal ein bischen mehr code, damit wir wissen was für variablen das sind und ob ihr C/C++/beides verwendet.


Zitat:
n dem fall lässt du dann field2 (so es denn ein charpointer ist) auf argv[1] zeigen, es wird allerdings nicht der inhalt kopiert..

damit kein missverständnis entsteht, der inhalt von argv[1] wird schon nach field2 kopiert, allerdings enthält argv[1] nur eine speicheraddresse des ersten zeichen einer zeichenkette, also irgendeine kuriose zahl.
--
main($)??<-$<='?'>>2?main($-!!putchar(
(("$;99M?GD??(??/x0d??/a:???;a"+'?'/4)
??($??)+'?'/3-2-1+$%2)??''?')):'?';??>

Dieser Post wurde am 14.01.2004 um 15:24 Uhr von kronos editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.01.2004, 15:47 Uhr
ai-tee



Hrhr ja mach was Du willst ...

nene is schon klar nun ... und es war ein CString ...

das Problem ist einfach ... ich habe C++ in der BS gelernt ... dann noch was ich in Büchern, Foren, (hier), irgendwelchen Links, irgendwelchen Kollegen, usw. mitkriegen konnte ... in meinem Kopf ist ein großes durcheinander ... jetzt hab ich eben wieder mein Buch (vielleicht gibt mal jemand der es kennt ein Statement ab ob es gut ist oder nicht (C/C++ New Referenz von Dirk Louis unter Markt&Technick)) aufgeblättert auf einmal steht da printf ... ich meine Hallo? Was nu? Wozu gibt es Ansi Schnick Schnack?

Alle erzählen was anderes und ich verzweifle immer mehr mit dem Thema "wie programmiert man richtig" ... viele werden jetzt sagen ... gar nicht ... richtig gibt es nicht. Ok mag angehen. Aber ich meine damit "vorbildlich". Ich will gut leserlichen, einheitlichen Code produzieren ... und für so etwas gibt es Standards, Richtlinien, und was weiß ich noch alles ...

aber keiner hält sich dran und irgendwo ... hrggg treibt einen dass in den Wahn ;P

So und nu zu Dir windalf ... grrrr
Dein Code is ... ja ... jaaa ... ja er is echt geil ... aber scheiße man, wer soll das lesen? Du denkst schon in C, was?

Naja whatever ...

so nun zurück zum CString ... damit geht es ... aber warum?
Das mit den Pointern is mir nun klar ... steht nur ne Adresse drin. Konvertiert CString das automatisch?

Hey ... und falls sich jemand angepickt fühlt ... nur zu ... ich bin bereit ... schlachtet mich
--
Greetz, ai`tee
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
14.01.2004, 15:53 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

So und nu zu Dir windalf ... grrrr
Dein Code is ... ja ... jaaa ... ja er is echt geil ... aber scheiße man, wer soll das lesen? Du denkst schon in C, was?
Naja whatever ...


äh von welchem code redest du gerade...?

um nochmal auf dein CString zu kommen...
Das ist eine Klasse der MFC für die auch der =operator definiert ist...
soll heissen wenn in dem einen CString "abc" dring steht und du setzt einen anderen CString gleich diesem dann funktioniert das...

was nicht funktioniert ist folgende


C++:
char mystring[]="abc";
char *temp;
temp=abc; //dies hier geht zwar allerdings zeigt temp dann nur auf den arrayanfang auf den abc zeigt...
mystring und temp sind nur pointer wobei mystring fest auf den arrayanfang zeigt wo abc drin steht....
wenn du das ganze kopieren willst musst du jedes einzelne byte kopieren und das geht mit strcpy, sprintf oder mit weiss ich noch was allem



so jetzt alles klar?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
14.01.2004, 16:15 Uhr
(un)wissender
Niveauwart


@ai-tee
std::string(argv[1]) == std::string("?");
std::string my_string = argv[1];

Nicht performant, aber sicher und einfach, allerdings nur in C++
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
14.01.2004, 16:18 Uhr
(un)wissender
Niveauwart


Zu Richtlinien:
Viele c/c++-programmierer schreiben sehr schlechten code, ich glaube, da stehen einige drauf. Guter Ansatz von dir es besser machen zu wollen.
Wenn C++ dann nimm cout, etc.
Wobei printf auch "ANSI" ist, nur halt für c.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
14.01.2004, 16:32 Uhr
derphilipder



Bin nicht sicher, ob ich das Problem richtig verstanden habe, aber
argv[1] == "?" führt logischerweise zu einem Fehler.

Wenn dann argv[1] == '?'
--
Konfuzius says: "A man who goes to bed with an itchy asshole is a man who wakes up with stinky finger!"
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: