All C and C++ compilers reject this code. Even g++ would not compile it until I added:
#include <iostream>
at that point I had to run it with:
./bogus ; sleep 10
to see the output. To fix that, I made this change:
cout << sizeof(s) << "\n" ;
Now that I can easily view the output, yes it is zero. I am a liitle surprised that it compiles at all. Using:
g++ -ansi -pedantic bogus.C -o bogus
I get a warning:
bogus.C:4 warning: ANSI C++ forbids zero-size array `c'
How many characters did you expect c[] to be sized for? 5? 17? 80? Is zero really that unexpected? I really cannot imagine what result you were hoping for...