Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Zahlentausch in C

  1. #1
    Registrierter Benutzer
    Registriert seit
    20.11.2000
    Beiträge
    35

    Zahlentausch in C

    Hi zusammen,

    als C-Neueinsteiger scheitere ich an folgendem Problem:

    Code:
    #include <stdio.h>
    #define TAUSCHE (x,y) {int j; j=x; x=y; y=j;}
    
    int main()
    {
     int a,b;
     a=2;
     b=5;
     TAUSCHE(a,b);
     printf ("Die getauschten Werte lauten: %d - %d\n",a,b);
     return 0;
    }
    Diesen Code habe ich aus einem Online-Tutorial abgeschrieben und soll eigentlich die Variablen a und b tauschen, aber irgendwie meckert der Compiler (Präprozessor?) ständig etwas von
    x undeclared (first use in this function)

    gleiches für j und x

    Kann mir vielleicht jemand in einem Satz erklären, wo denn da der Denkfehler liegt?

    Vielen Dank im voraus.

    Kleine Anmerkung: Der Zahlentausch soll über #define verwirklicht werden!
    Read Mail Really Fast with rm -r -f

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Das Macro wird durch ein Leerzeichen hinter TAUSCHE unterbrochen.

    Code:
    #define TAUSCHE(x,y)
    Nachdem Leerzeichen beginnt die Definitiondes Macros.

    Ciao,
    _

  3. #3
    Registrierter Benutzer
    Registriert seit
    20.11.2000
    Beiträge
    35
    *auf die Stirn schlag*

    Vielen Dank für die Hilfe.
    Read Mail Really Fast with rm -r -f

  4. #4
    Registrierter Benutzer
    Registriert seit
    16.01.2002
    Ort
    DarkTown
    Beiträge
    40
    @TommeS73
    Du solltest die Vertauschung besser als Funktion implementieren,
    weil Makros in C/C++ nicht so "sauber" sind (z.B. keine Typprüfung)
    und sie Programmierstyle gehören.
    When there`s no more room in Hell
    the dead will walk the Earth

Lesezeichen

Berechtigungen

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