Guten Abend zusammen, könnt ihr mir bitte sagen, ob das geht am Anfang der Funktion einen Block menue1 zu definieren, der dann später immer bei Bedarf aufgerufen wird. so wie weiter unten im Bild, da wird menue1 aufgerufen. bei mir im Programm wird dieser Block menue1 schon mit der #define anweisung ausgeführt. ist das richtig? ich hätte gedacht dort werden diese Anweisungen noch nicht ausgeführt, erst später bei einem Aufruf von menue1. Vielen Dank im Vorraus für Eure Hilfe. Viele Grüße, Matthias.
Prinzipiell kannst du ein #define an irgendeiner Stelle im Programm schreiben; es wirkt sich maximal auf den Rest des kompilierten Quelltextes aus. In aller Regel ist es aber Quark, es nicht ziemlich weit oben im Quelltext zu schreiben. Insbesondere musst du erst verstehen, daß das #define nicht wie sonstiger Quelltext behandelt wird, der ja Blockstruktur, Funktionen etc. hat. Weiterhin definierst du mit deinem #define keinen Block, sondern nur das Makro mit dem Namen menue1 ohne jeden Inhalt. Der folgende Block gehört schon nicht mehr zum Makro. -> Mal ein gutes C-Buch lesen könnte helfen. Und nein, es macht keinen Sinn, sich die Sprache C hier stückweise erklären zu lassen.
Schlag in deinem C-Buch nach, wie man ein #define über mehrere Zeilen macht. Allerdings ... > könnt ihr mir bitte sagen, ob das geht am Anfang der Funktion einen > Block menue1 zu definieren, der dann später immer bei Bedarf aufgerufen > wird. ... macht man so was nicht über ein #define, sondern über eine weitere Funktion.
ach ja, Quelltext als Bild hier einzufügen ist unsinnig. Kostet nur Platz und kann nicht als Text kopiert werden.
Klaus Wachtler schrieb: > Prinzipiell kannst du ein #define an irgendeiner Stelle im Programm > schreiben; es wirkt sich maximal auf den Rest des kompilierten > Quelltextes aus. > > In aller Regel ist es aber Quark, es nicht ziemlich weit oben im > Quelltext zu schreiben. > > Insbesondere musst du erst verstehen, daß das #define nicht wie > sonstiger Quelltext behandelt wird, der ja Blockstruktur, Funktionen > etc. hat. > > Weiterhin definierst du mit deinem #define keinen Block, sondern nur das > Makro mit dem Namen menue1 ohne jeden Inhalt. > Der folgende Block gehört schon nicht mehr zum Makro. > > -> Mal ein gutes C-Buch lesen könnte helfen. > Und nein, es macht keinen Sinn, sich die Sprache C hier stückweise > erklären zu lassen. Hallo, danke für Deine Antwort. Ja, ich wollte wohl ein Makro schreiben, dass ich innerhalb einer Funktion immer wieder aufrufen kann. Dieses soll nur in der Funktion gültig sein, deswegen wollte ich es hier definieren. Makro, das ist wohl der richtige Hinweis wonach ich im C-Buch suchen muss. Diese Hilfe habe ich gebraucht und soll auch reichen. Viele Dank und viele Grüße, Matthias.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.