Anzeige:
Ergebnis 1 bis 3 von 3

Thema: [C] Merkwürdiges Verhalten

  1. #1
    Registrierter Benutzer
    Registriert seit
    14.05.2001
    Beiträge
    63

    [C] Merkwürdiges Verhalten

    Hallo,

    hab seit neuester Zeit innerhalb eines kleinen Programmes häufiger sehr komisches Verhalten beim Aufrufen von Funktionen (auch aus den Standard Bibliotheken) und auch meinen eigenen Funktionen. Schreibe ich einen langen String in printf oder fprintf() oder auch beim Übergeben an eigene Funktionen "hintereinander", kommt es vor, dass das Programm zu einem Speicherzugriffs Fehler führt.
    Es kommt teilweise auch vor, dass komplette Programmteile dabei übersprungen werden. Der Fehler geschieht hierbei:
    // hier tritt der fehler auf
    printf("dasisteinlangerstringdereigentlichkeinensi nnmacht\n");

    // damit geht es
    printf("dasisteinlangerstringde \
    reigentlichkeinensinnmacht\n);

    Also springe ich beim Übergeben der Übersicht halber in eine neue Zeile läuft das Programm normal ab. Kann das jemand erklären oder hatte jemand bereits ähnliches Verhalten in seinen Programmen feststellen können?

    Bin für jede Hilfe danbar,
    h.d.

  2. #2
    Registrierter Benutzer
    Registriert seit
    22.03.2001
    Beiträge
    650
    Der Unterschied ist, dass bei der ersten Version der String am Ende \ n hat, während es bei der zweiten \n ist. Weil \ als Steuerzeichen interpretiert wird, funktioniert das erste mit "\ " nicht während das zweite mit "\n" funktioniert.

  3. #3
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Wenn eine Zeichenkette länger als eine Zeile ist schreibt man das so

    Code:
    printf("das ist ein viel zu langer"
           " string");
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •