Programmierproblem - SciFi-Forum

Ankündigung

Einklappen
Keine Ankündigung bisher.

Programmierproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Programmierproblem

    Hallo,
    ich will für einen Freund ein Programm schreiben, jedoch ist für mich das abspeichern von strings in Dateien absolutes Neuland (ich lerne ANSI C in der Schule und das Kapitel wird im Buch leider nur angeschnitten).
    Jedenfalls hab ich folgendes Konzept.

    Der Benutzer soll einen Namen eingeben z.B. Kurzschwert, Kategorie Waffe, ID 1 (ist fürn Rollenspiel), aber was letztendlich abgespeichert werden soll ist folgendes:
    New_Recipe("Kurzschwert",WAFFE,01);

    Wie öffne ich also eine Textdatei, füge die drei Werte, Name, Kategorie und ID in den String "New Recipe("Name",Kategorie,ID);" ein und speicher dieses in einer Textdatei ab?
    Wie kann ich den nächsten Wert in der nächsten Zeile einspeichern?

    Vielen Dank schonmal im vorraus.

    PS:
    Ich hab mich schon im Netz umgeguckt, aber die Tutorials die ich gefunden habe, sind nicht für ANSI C und deshalb nicht brauchbar bzw. ich habe nicht das gefunden, was ich brauche.

    #2
    schau dich mal hier um (Kapitel 18):

    Galileo Computing :: C von A bis Z – Vorwort

    das Buch steht komplett online zur Verfügung und ist reines ANSI C. Ist wahrscheinlich, weil du es ja lernen willst, besser wenn du dir das selbst zusammenbaust. Wenns nicht klappt poste ich gerne ein paar Codeschnipsel.
    "Wer Sicherheit der Freiheit vorzieht ist zu Recht ein Sklave"
    (Aristoteles 384 v.Chr. - 322 v.Chr.)

    Kommentar


      #3
      Ich brauch nur eines...

      WIe kann ich einen String in eine Variable kopieren, wenn das Ende des Strings aus " besteht? Der Compiler gibt mir dann einen Fehler aus.
      Der String muss so aussehen:

      NewRecipe("

      Also in etwa:

      strcpy(part1,"NewRecipe("");

      ich bekomm dann aber einen Fehler.
      Wie kann ich das umschreiben?

      Kommentar


        #4
        Kenne mich mit Ansi nicht aus aber gib doch eindach den Ascii-Code des Gänsfüsschens an, wenn Du den String zusammenbastelst. Also nicht

        Stringvariable$ = "

        sondern

        Stringvariable$ = STRG (34)

        Und dann halt den String "zusammenbasteln"

        Ist zwar Basic/Pascal, aber Ansi hat sicher entsprechende Befehle und Funktionen.
        ---Werbung--- Hier könnte Ihre Signatur stehen! Nur 20 Euro im Monat.

        Kommentar


          #5
          du musst das ganze maskieren, damit es als Ausgabezeichen erkannt werden kann, ansonsten wird es als Steuerzeichen interpretiert.

          Einfach einen Backslash davorschreiben.

          \"Testtext\" ergibt dann in der Ausgabe "Testtext".

          edit: LuckyGuys Lösung funktioniert aber auch.
          "Wer Sicherheit der Freiheit vorzieht ist zu Recht ein Sklave"
          (Aristoteles 384 v.Chr. - 322 v.Chr.)

          Kommentar

          Lädt...
          X