How is the following line interpreted by GCC compiler:
printf(\"HELLO\");
I want to know this because when I am running following program
This is an artifact of C pointer-arithmetic; printf
is just a red herring.
The type of a string literal (such as "Good morning
") is const char *
. Your code is equivalent to:
const char *p = "Good morning";
p = p + 5;
printf(p);
Adding a pointer and an integer produces a pointer to the 5th element in the sequence.