C语言结构体中字符串赋值

struct student 

{

 

 char name[20];

};

#include

main()

{

    struct student s1;

    s1.name = "zhang";

    printf("%s\n", s1.name);

    return 0;

}

以上的代码,编译会提示出错,因为在C结构体中,字符串不能直接这样赋值,需要用字符串拷贝语句strcpy,如下代码:

struct student 

{

    char name[20];

};

#include

#include

main()

{

    struct student s1;

    strcpy(s1.name, "zhang");

    printf("%s\n", s1.name);

    return 0;

}

这样结构体中字符串就可以正常输出了

你可能感兴趣的:(C语言)