Forum: PC-Programmierung C-Programmierung und define


von Michael (Gast)


Lesenswert?

Hallo,

mir ist die C-Syntax eigentllich bekannt, aber wieso kann man so 
zusätzliche Angaben wie beim folgenden Define machen???

#define fct /
(module.name.value)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

#define und das, was damit passiert, betrifft den Präprozessor, der 
daraufhin Textersatz macht.

Das, was Du da schreibst, hat aber damit nichts zu tun, das kann 
allenfalls eine compilerspezifische Erweiterung sein.

Woher hast Du das?

von Karl H. (kbuchegg)


Lesenswert?

Weil ein / als letztes Zeichen einer Zeile dem Präprozessor mitteilt, 
dass die nachfolgende Zeile auch noch mit dazu gehört

von Michael (Gast)


Lesenswert?

Ist aus 'nem Beispielprojket.
Dann wird die Funktion mit einem Übergabewert initialisiert?

von Karl H. (kbuchegg)


Lesenswert?

Michael schrieb:
> Ist aus 'nem Beispielprojket.
> Dann wird die Funktion mit einem Übergabewert initialisiert?


Da wird gar nichts initialisiert.
Der Präprozessor wird aufgefordert im weiteren Quelltext den Text "fcnt" 
durch den Text "(module.name.value)" zu ersetzen.
Was immer das dann auch im weiteren Programmtext bedeuten mag.

von Klaus W. (mfgkw)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Weil ein / als letztes Zeichen einer Zeile dem Präprozessor mitteilt,
> dass die nachfolgende Zeile auch noch mit dazu gehört

Sicher? Oder muss ich erst meinen Kosmetikspiegel holen?

von Karl H. (kbuchegg)


Lesenswert?

Jetzt hast du mich unsicher gemacht. War es / oder doch \ (Ich benutz 
das heutzutage nur noch so selten :-)

rums rums rums ... google

OK. Line Continuation ist \ und nicht /
Mea culpa


Jetzt bin ich aber neugierig.
@MIchael
Kannst du mal etwas mehr 'Umgebung' zu diesem Makro posten?

von Michael (Gast)


Lesenswert?

Hey Leute, wahrscheinlich war ich so verpeilt und hab den Text im 
Spiegel gelesen... Nee, bin mir nicht ganz sicher, ob / oder \

von Rolf Magnus (Gast)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Jetzt hast du mich unsicher gemacht. War es / oder doch \ (Ich benutz
> das heutzutage nur noch so selten :-)

Ist doch eigentlich einfach. / ist der Divisions-Operator, und das 
natürlich auch am Zeilenende. Das \ mit folgendem Zeilenende kann man 
sich wie ein escapetes Newline vorstellen. Das \ ist ja allgemein das 
Escape-Zeichen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.