If I were to put an instance of something that has been #defined inside a string, would it still get replaced? i.e.
Code:
#include <stdio.h>
#define MYSTRING hello
int main(void)
{
puts("MYSTRING world!");
return 0;
}
Would this return "MYSTRING world!" or "hello world!"?
Now, I know I could've just tested that myself, but my other question is if this is preprocessor specific behavior or if it's standards defined or what. Whichever result, can I assume that all compilers would treat it the same way?