Consider the following:
This prints out:Code:#define STR "some long string" int main(int argc, char* argv[]) { char c* = "some long string"; printf("%d\n", sizeof(c)) printf("%d\n", sizeof(STR)); return 0; }
8
17
What’s the explanation for the difference?
Shouldn't I expect the same result in both cases?