Comma between two values in a macro I am working on a project involving an Aduino and screen.

As i was going through the u8glib (Arduino Monochrome Graphics Library for LCDs and OLEDs), something caught my attention:

#define U8G_ESC_DLY(x) 255, ((x) &amp; 0x7f)
#define U8G_ESC_CS(x) 255, (0xd0 | ((x)&amp;0x0f))


How can i interpret this macro for a given x value ?
How can i interpret this macro for a given x value ?


As normal. First expand the macro, and then worry about what the comma means in context. In an expression the result is the expression on the right of the comma. In a function call it stands in for two arguments. Just look at where it's used and that's what it will mean.