Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Macro

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.03.2006, 22:55 Uhr
ref



#define MAX(x,y) ( (x) > (y) ? (x) : (y) )

int x = 5, y = 7, z;
z = MAX(x,y); // hier ist Macro Aufruf damit soll z=7; Warum was bedeutet die ? und
die : zeichen
--
Man kann ein Problem nicht mit der gleichen Denkweise lösen, mit der es erschaffen wurde. (Albert Einstein)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.03.2006, 23:01 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi, der "? :" ist einer Art "Entweder-oder"-Operator

im endeffekt ist das das gleiche:


C++:
int a = 4, b = 5;
int c;

c = ( (a < b) ? 100 : -100);




C++:
int a = 4, b = 5
int c;

if(a < b)
  c = 100;
else
  c = -100;


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.03.2006, 23:19 Uhr
ref



Ach so, das ist mir neu , danke.
--
Man kann ein Problem nicht mit der gleichen Denkweise lösen, mit der es erschaffen wurde. (Albert Einstein)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
22.03.2006, 19:02 Uhr
stephanw
localhorst


Wenn Du schon dabei bist... eine solche Macro-Definition ist in C++ überflüssig und nicht ohne Risiken. Wenn Du dem Macro allgemein einen Ausdruck als Operand übergibst, wird der mehrfach ausgewertet, was unter Umständen hässliche und schwer zu findende Bugs produziert.

Lieber std::max(a,b) benutzen !
--
Reden ist Schweigen und Silber ist Gold.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: