Möcht en Programm schreiben, aber wo fang ich an?



  • Hi...bin noch recht frisch in sachen C/C++ und da brauch ich etwas starthilfe ;).

    Also ich möchte ein programm schreiben (win32) was folgendes tut:

    - Nach aufforderung mit "-add" muss der Benutzer was eingeben...
    - Das soll in einer .txt gespeichert werden.
    - Ende.
    - Wenn man das Programm nach einiger zeit wieder öffnet um sachen nachzugucken, was inner .txt steht, soll man es mit "-list" lesen können was in der .txt steht.
    - Desweiteren soll man Einträge auch wieder löschen können mit dem Befehl "-del"

    So ne Art Menü damits net so kompliziert wird:

    - Etwas in der .txt Datei hinzufügen: -add
    - Etwas aus der .txt löschen : -del
    - Auflisten was in der .txt steht : -list

    Hoffe des war net alt zu schwer zu verstehen:).

    Bin über jeden Tipp sehr dankbar 🙂



  • c oder c++)

    für c++ würde ich mir erstmal den artikel ströme im c++ faq (unten auf der seite) durchlesen, und mir da weitere ideen holen 😉

    wenn c, dann kannst du für textarbeit mal das entsprechende kapitel auf www.pronix.de erforschen.



  • da ich noch neuling bin und nur die sprache von c kenne würde ich eher das 2te vorschlagen;)

    aber ich find komischer weise das kapitel net...kannst mir da helfen elise?

    achja, danke dir für deine unterstützung;)

    /edit:

    so ich hab ersma des mit -list gemacht, sodass er mir die zeichen für zeichen ausliehst.
    Aber wie kann ich nun den befehl "-list" hinzufügen?

    hier mal der code:

    #include <stdio.h>
    #include <stdlib.h>
    
    int main(void) 
    {
    int c;
    FILE *datei;
    
    printf( "USE: \n");
    printf( "---------\n");
    printf( "Add Word   : sort.exe -add\n");
    printf( "Delete Words: sort.exe -del\n");
    printf( "List File : sort.exe -list\n");
    printf( "\n\n");
    
       datei=fopen("test.txt", "r");
       if(datei != NULL) {
          while( (c=fgetc(datei)) != EOF)
             putchar(c);
       }
       else {
          printf("Where is the File?!\n");
          return EXIT_FAILURE;
       }
       return EXIT_SUCCESS;
    
    }
    


  • Im Open Book C von A bis Z:

    Kapitel: 18. Ein-/Ausgabe - Funktionen

    Dort steht alles was du brauchst.



  • Dein main() Programmeinstiegspunkt übernimmt die Sache mit -list.

    Die main() muss so aussehen:

    int main(int argc, char *argv[]) //häufiger benutzt
    
    oder
    
    int main(int argc, char **argv) //weniger häufig benutzt
    

    Wie man sehen kann übergibt argc eine Zahl. Diese Zahl entspricht der Anzahl
    benutzter Parametern. Sie ist niemals kleiner als 1, da an der 1. Stelle der
    Pfad zum Programm gespeichert ist.
    D.h. ist argc > 1 wenn ein Parameter angegeben wurde 😉

    argv ist ein Zeiger auf ein Char Feld, in argv[0] befindet sich der der Pfad zum Programm, argv[1] währe also der erste Parameter.

    Doch wie benutzten wir Parameter?
    Unter Windows z.B. mit einer Batch Datei.
    In diese schreiben wir einfach folgendes:

    @echo on
    programmname.exe -list
    pause
    

    Das echo ist auf on gesetzt, damit wir auf dem Bildschirm angezeigt bekommen was das Programm zurückgibt.
    Dem Programm programmname wird der Parameter -list übergeben, welcher in argv[1] gespeichert wird.
    Das pause ist nur zum fensteraufhalten, eine Kinderkrankheit bei der Windowskonsole oder soll ich lieber Dos Emulator sagen...

    Ich hoffe das hat dir jetzt etwas geholfen 🤡



  • Danke dir, es hat mir geholfen, aber wenn ichs programm starte zeigt er mir direkt an was in der text.txt ist:(


Anmelden zum Antworten