I have a simple doubt in char arrays. I have a structure:
struct abc {
char *charptr;
int a;
}
void func1()
{
    func2("hello");
}
void func (char *name)
{
    strcpy(abc.charptr, name); // This is wrong. 
}
This strcpy will result in a crash since I do not have any memory allocated to the charptr.
The question is : For mallocing this memory, can we do
abc.charptr = (char *) malloc(strlen(name)); //?
strcpy(abc.charptr, name); // Is this (or strncpy) right ?
Is this right ?
 
     
     
     
    