WinFuture-Forum.de: C Programmierung: Überprüfung Auf Integer-wert - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

C Programmierung: Überprüfung Auf Integer-wert


#1 Mitglied ist offline   wiseguy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 23
  • Beigetreten: 15. März 06
  • Reputation: 0

geschrieben 19. April 2006 - 15:22

Hallo

Wie kann ich denn Prüfen, ob es sich bei einer Eingabe Option um einen Integer Wert handelt?

Ich versuchs mal etwas genauer zu segen, was ich will:

"Programmname GANZZAHL"
... Soll aufgerufen werden. Nun könnte aber "Programmname blöd" aufgerufen worden sein.

Ich muss also überprüfen ob argv[1] integer ist oder nicht. Wie macht man das?

mfg
0

Anzeige



#2 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 19. April 2006 - 16:04

int shlwapi::StrToInt(LPCTSTR lpSrc)
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#3 Mitglied ist offline   wiseguy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 23
  • Beigetreten: 15. März 06
  • Reputation: 0

geschrieben 19. April 2006 - 16:48

und wo muss ich da angeben, was ich überprüfen will? Ich sehe nirgends ein argv[1] oder so etwas. - Wie schreib ich das genau? Kannst du mir evtl. ein kleines Beispiel aufschreiben, bitte?

mfg
0

#4 Mitglied ist offline   mo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.794
  • Beigetreten: 17. Juni 02
  • Reputation: 0
  • Wohnort:Ulm / BaWü

geschrieben 20. April 2006 - 08:20

wise, rika ist davon ausgangen, dass deine main etwa so aussieht:
int main(int argc, char **argv)

was die beiden parameter beinhaltet verrät dir das erste kapitel deines lieblings-C-programmierenbuchs.
I'm mó. mo's good twin.
0

#5 Mitglied ist offline   wiseguy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 23
  • Beigetreten: 15. März 06
  • Reputation: 0

geschrieben 20. April 2006 - 13:33

Ja, genauso siehts auch aus - und das argc enthält einen int Wert, der der Anzahl der Zeichenketten beim Aufruf entspricht (beginnend mit 0) und das argv ist quasi ne Matrix, so dachte ich, die die Parameter (incl. Programmname) selbst enthält.

Aber ich verstehe nicht recht, was die Ausdrücke "int shlwapi::StrToInt(LPCTSTR lpSrc)" genau machen. Womit wird denn festgelegt, welcher der angegeben Parameter überprüft werden soll? Ich hab ja noch weitere Parameter, wie etwa eine Logfile und ähnliches. Diese dürfen natürlich char Werte sein...

mfg
0

#6 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 20. April 2006 - 13:47

shlwapi ist eine Bibilothek von Windows, deren Funktionen du über das Includen von shlwapi.h einbinden kannst. Die Funtion StrToInt nimmt einen Long-Pointer auf einen CString entgegen und liefert die Intepretation als Integer zurück (oder eine Exception).
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#7 Mitglied ist offline   wiseguy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 23
  • Beigetreten: 15. März 06
  • Reputation: 0

geschrieben 20. April 2006 - 23:34

Dann vermute ich, dass das auch nur im Windows so funktioniert. Dann nützt mir das erstmal nicht, da ich nur im Linux bzw. UNIX kompiliere.
0

#8 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 21. April 2006 - 00:32

Tja, bei BCC gäb't da noch ein StrToInt in der math-Lib, aber die willst du bestimmt nicht haben. Wie wär's mit STL?

Das alles wäre viel leichter, wenn man wüßtest, warum genau du atoi aus der StdLib nicht verwenden möchtest. Zu schlechte Fehlerbehandlung?

Dieser Beitrag wurde von Rika bearbeitet: 21. April 2006 - 00:33

Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#9 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 345
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 21. April 2006 - 22:24

Hallo Rika aufwachen, in der Überschrift steht C Programmierung nicht C++!!!

@wiseguy, wenn du es simple haben willst, nim einfach scanf bzw sscanf und als format such dir einen aus:

http://www.cplusplus...tdio/scanf.html
http://www.php-cente...ion.sscanf.html
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0