1: Is this possible to have an array of zero size such as array[0]? What would it mean?
No.
2: The instructor mentioned that it is not possible to return an array using a user-defined function (perhaps, this is true in the context of the techniques available to the beginners). I think he was also saying that it is possible to return one element of an array at a time.
It is true in all cases, so long as array means array type. Some functions will return a pointer to an element in an array, and that pointer could access the rest of the array. It is always possible to return a single element in an array.
3: Suppose , then when I write
Code:
char name[LEN] = {0}
what does it really mean? The name array is supposed to contain characters but I'm using a constant value which is "0". All the elements of the array have been initialized to "0".
Consider instead:
Code:
char name[LEN] = {'M','e'};
This syntax initializes the array's first two characters to 'M' and 'e', and the rest of the array is 0-initialized. Generally any members of the array that you don't specify a value for are initialized to 0, so long as at least one character is initialized.