gcc 4.4.4 c89
I got into a recent discussion about \"fixed width strings\" and \"zero terminated strings\".
When I think about this. They seem to be the same
I am not quite sure about the term "fix width string". Depending on C function strings need or don't need an ending \0. Functions like strlen and strcpy need to work on \0 terminated strings in order to know when to stop. Functions like strncpy don't need the source string to be \0-terminated since one argument tells how many characters to copy.
When you declare name as you do the contents of what name points to is stored in read-only memory and can not be modified however you can use 'name' in C functions that do not modify the contents e.g. strlen(name) or when used as a source:
char mycopy[32];
strcpy( mycopy, name );