C preprocessor

Jimmy Angelakos vyruss at hellug.gr
Wed Nov 3 00:31:09 EET 2010


On Tue, 2010-11-02 at 23:19 +0200, Houtouridis Christos wrote:
> Χαιρετώ τη λίστα (Χρόνια και ζαμάνια)

Γεια σου Χρήστο!

> Για να μην 'βγω τελείως off-topic, μιας και η λίστα είναι για χρήστες
> linux θα σας πω το εξής, που αν θέλετε το πιστεύετε. Τα παρακάτω τα
> δοκιμάζω σε ένα μηχάνημα με debian squeeze.

Commence the trolling!

> #define fun(A,B)              \
>    do{                        \
>       A##.a = 5 + B##.a;      \
>       A##.b = -5 + B##.b;     \
>    }while (0)

OK πρώτα απ'όλα ο cpp ξερνάει και λέει:
error: pasting "mpla" and "." does not give a valid preprocessing token

That should have tipped you off.

Οπότε σκέφτεσαι μετά: do I really need the ## ?

Hint: http://en.wikipedia.org/wiki/Whitespace_character


Φιλικά
Μήτσος



More information about the Linux-greek-users mailing list