ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Programmierung > ReadArgs(): Interessantes Problem... | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
-1- | [ - Beitrag schreiben - ] |
08.03.2007, 01:25 Uhr whose Posts: 2156 Nutzer |
Hallo! Wie das Thema schon sagt: Ich habe Streß mit ReadArgs(). Der äußert sich so: starte ich das Programm ganz ohne Parameter -> Absturz. Starte ich es mit einem Teil der Parameter -> Absturz. Starte ich es mit allen Parametern -> alles Bestens und die Parameter werden korrekt übergeben. Hier mal ein Code-Ausschnitt aus dem bewußten Programm: C code:static LONG args[5]; ... int rc = RETURN_OK; if (rdargs = ReadArgs("INFILE/A,STARTX/A/N,STARTY/A/N,SIZEX/A/N,SIZEY/A/N", args, NULL)) { ... } Ich frage mich jetzt, was ich genau verkehrt mache, daß statt "Gefordertes Argument fehlt" der Guru zu Besuch kommt. So ganz begreife ich das nämlich nicht. Ich kompiliere das Programm mit dem vbcc 0.8j. Gibts da möglicherweise ein Problem? Ein anderes Programm mit ähnlichem Aufbau, mit dem StormC kompiliert, läuft tadellos und gibt auch eine ordentliche Meldung von sich. Dieses da oben habe ich noch nicht mit dem Storm durchgenudelt, weil ich den z.Z. nicht installiert habe. Für eine Hilfe wäre ich echt dankbar, das treibt mich noch in den Wahnsinn Grüße -- --- µA1 PPC 750GX-800 A4000 PPC 604e-233 [ Dieser Beitrag wurde von whose am 08.03.2007 um 02:11 Uhr geändert. ] [ - Antworten - Zitieren - Direktlink - ] |
08.03.2007, 02:48 Uhr whose Posts: 2156 Nutzer |
Danke, hat sich erledigt. Ich habe nen verkorksten Cast gefunden Grüße -- --- µA1 PPC 750GX-800 A4000 PPC 604e-233 [ - Antworten - Zitieren - Direktlink - ] |
08.03.2007, 09:20 Uhr thomas Posts: 7718 Nutzer |
Zitat: Ich benutze stattdessen immer struct { char *infile; long *startx; long *starty; long *sizex; long *sizey; } args; Dann kann ich später auf args.infile zugreifen und muß nicht sowas wie (char *)args[0] benutzen. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
09.03.2007, 18:42 Uhr whose Posts: 2156 Nutzer |
@thomas: Hm, schon, aber bei /N-Argumenten muß man dann doch auch wieder wüst tippen, so ala *(args.startx); Viel weniger Tipparbeit ist das auch nicht, finde ich. Allerdings muß man sagen, daß ReadArgs() ne recht praktische Sache ist, wenns denn nur nicht so umständlich zu handhaben wäre... Grüße -- --- µA1 PPC 750GX-800 A4000 PPC 604e-233 [ - Antworten - Zitieren - Direktlink - ] |
09.03.2007, 18:55 Uhr thomas Posts: 7718 Nutzer |
@whose: Also ich finde schon, daß *args.startx weniger Tipparbeit ist als *((long *)args[1]). Und es geht ja auch nicht um die Tipparbeit, sondern um die Lesbarkeit und die Reduzierung der Casts. Letzteres reduziert auch automatisch die Anzahl Fehler. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
09.03.2007, 19:06 Uhr whose Posts: 2156 Nutzer |
Zitat: Ja, mit Blick auf die Casts verstehe ich das. Wie würde denn die struct an ReadArgs() übergeben? wäre doch einfach ein (LONG *)&args, oder sehe ich den Wald vor lauter Bäumen jetzt nicht? Die Suche nach dem verkorksten Cast vor 2 Tagen hat mich doch etwas wild gemacht... Grüße -- --- µA1 PPC 750GX-800 A4000 PPC 604e-233 [ - Antworten - Zitieren - Direktlink - ] |
10.03.2007, 09:37 Uhr thomas Posts: 7718 Nutzer |
@whose:Zitat: Genau. Oder (APTR)&args. Gruß Thomas -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Antworten - Zitieren - Direktlink - ] |
-1- | [ - Beitrag schreiben - ] |
amiga-news.de Forum > Programmierung > ReadArgs(): Interessantes Problem... | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |