Viresh Kumar wrote:
struct foo { .... char array[5];
};
I am not adding '\0' in my string at all. Is this '\0' always added by compiler, even in above situation?
The compiler does not add the trailing '\0'. It is added only by the string manipulation functions, as for example sprintf.
Regards