C语言及程序设计进阶例程-16 当结构体成员为指针

贺老师教学链接C语言及程序设计进阶 本课讲解

有问题吗?

#include #include struct Test { int x; char *str; }; int main() { struct Test a; a.x=100; char s[]="Hello"; strcpy(a.str,s); printf("%d %s\n", a.x, a.str); return 0; }



正解——当有指针数据成员,必须先为其分配空间!
#include #include #include struct Test { int x; char *str; }; int main() { struct Test a; a.x=100; char s[]="Hello"; a.str=(char*)malloc(strlen(s)+1); strcpy(a.str,s); printf("%d %s\n", a.x, a.str); return 0; }




【C语言及程序设计进阶例程-16 当结构体成员为指针】

    推荐阅读