Unterschied int und define leicht erklärt?

2 Antworten

Was ist der Unterschied zwischen int und define

Ich gehe mal davon aus, du redest von C / C++ ...

weil beides ist ja dafür da um eine Variable zu bestimmen.

Nein, ist es nicht.

"int" ist ein Datentyp - ein Integer. Du gibst diesen bei der Variablendeklaration als Typ an.

type name = value;

Dadurch wird der benötigte Platz im Speicher für den gegebenen Typen reserviert.

#define hingegen erlaubt die Definition von Makros. Das sind explizit KEINE Variablen und können im Nachhinein auch nicht verändert werden. Du kannst dir das als "Platzhalter" vorstellen - der gegebene Name wird vom Compiler überall in der gleichen Datei durch den gegebenen Wert ersetzt

Ja, du kannst das nutzen, um z.B. eine konstante Zahl zur Verfügung zu stellen, aber das ist auch nicht die einzige Art, wie du das benutzen kannst.

z.B. könntest du auch sowas machen:

#define MAX(X, Y) (((X) > (Y)) ? (X) : (Y))

Das kann aber zu unerwünschten Nebenwirkungen führen, weshalb du bei sowas in der Regel besser damit beraten bist, daraus eine Funktion zu machen

Woher ich das weiß:Studium / Ausbildung – Abgeschlossenes Studium der Informatik (B.Sc.)

int ist integer ein Ganzzahl Datentyp.

#define ist eine nützliche C ++ - Komponente, mit der der Programmierer einem konstanten Wert einen Namen geben kann, bevor das Programm kompiliert wird.

und nein mit define bestimmst du keine variable.