Not logged in. · Lost password · Register

anne
Member since Dec 2010
45 posts
Subject: Unterschied Makro und Funktion
Hallo,
in der Klausur Juli 2008 (1e) sind makros gegeben und man soll die operation durchführen meine lösung ist hier 10, weil man mit textersetzung arbeitet

und in der klausur oktober 2008 sind funktionen geben und man soll das gleiche machen, hier hat man mir gesagt man rechnet die werte hier zusammen zum schluss erhält man als ergebnis 50

warum macht man das so und was ist der unterschied?

danke für eure antworten
Kille
Member since May 2011
8 posts
Hallo anne,

Makros funktionieren tatsächlich durch reine Textersetzung. D.h. dass überall wo dein marko FOO im Code steht, der Präprozessor das FOO exakt durch das das definierte Zeugs ersetzt wird. Bei der aufgabe folgt also, dass aus 4 * MUL( ADD(1,2), 3) das hier wird: 4*1+2*3 und wenn man das (mit Punkt vor strich) ausrechnet kommt da eben 10 raus.

Bei Funktionen wird ein Wert von dem typ zurückgegeben, der in der in der Fkt. Deklaration als rückgabetyp drin steht. also bei einer int foo() wird ein int zurückgeben. Und zwar genau EIN int. wenn also return 1+2; da steht, wird nicht "1+2" zurück gegeben, sondern das ergebnis, also 3.

Und somit wird dann aus 5 * mul( add(4,1), 2) das hier: 5*mul(5,2) => 5*10 =50.

Ich hoff ich hab dich damit jetzt nicht noch mehr verwirrt.
This post was edited on 2011-08-04, 22:17 by Kille.
morty
SPiC-Meister
(Moderator)
Member since May 2011
331 posts
Quote by Kille:
5*10 =10.

Ich hoff ich hab dich damit jetzt nicht noch mehr verwirrt.

Eher dich selbst! ;)
anne
Member since Dec 2010
45 posts
In reply to post #2
danke für die erklärung war an sich gut verständlich..jetzt bin ich schlauer

und ergebnis ist 50...
Kille
Member since May 2011
8 posts
Ja, was sagen die tutoren da immer? "Das war ein Test" :D
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Special characters:
Go to forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen