P99
|
◆ P99_UNIQ
An identifier token that is intended to be unique in this compilation unit. This uses different line numbers in an include hierarchy to disambiguate, and, if available, the non-standard macro The argument may contain a token that is appended to the id. If during an individual compilation there is a conflict because this macro is used in lines with exactly the same LINE number, and If you need the same unique identifier at several places in the same macro you'd have to cascade as in the following example: #define MY_DO(ID, START, STOP, INC) MY_DO_(ID, P99_UNIQ(n), P99_UNIQ(p), (START), (STOP), (INC))
#define MY_DO_(ID, NU, PU, START, STOP, INC) for (unsigned ID = START, NU = STOP, PU = INC; ID < NU; ID += PU)
MY_DO(i, 0, strlen(filename), 1)
printf("%c-", filename[i]);
This would expand to printf("%c-", filename[i]);
Here, in the top most expansion of The effect here is that the generated |