结构体

数组方式


#include <stdio.h>
#include <string.h>
struct studentinfo{
    char name[50];
    int id;
};
int main() {
    struct studentinfo andrew,*p=&andrew;
    //p->name ="hello"   字符串不可以 赋值号  赋值
    p->id=2018;
    /*
     * 字符串初始化
     * 两种方式
     * 1.sprintf()
     * 2.strcpy()
     * */
    //方法1
    //sprintf(p->name,"andrew");
    //方法2
    strcpy(p->name,"andrew");
    puts(p->name);
    printf("%d
",p->id);

    getchar();
}


指针方式

#include <stdio.h>
struct student{
    //char name[10];
    char *name;
    int roll_number;
    float average_marks;
};

int main() {

    struct student student1={"wanson",201634001,98};
    puts(student1.name);
    printf("%d	
",student1.roll_number);
    printf("%f	
",student1.average_marks);
    puts("********************************************");
    struct student student2=student1;
    puts(student2.name);
    printf("%d	
",student2.roll_number);
    printf("%f	
",student2.average_marks);
    puts("********************************************");
    struct student *p=&student1;
    puts((*p).name);
    printf("%d	
",(*p).roll_number);
    printf("%f	
",(*p).average_marks);
    puts("********************************************");
    struct student *q=&student1;
    q->name="lilei";
    q->roll_number=20189312;
    q->average_marks=65.32;
    puts(q->name);
    printf("%d	
",q->roll_number);
    printf("%f	
",q->average_marks);
    puts("********************************************");
    getchar();
}



原文地址:https://www.cnblogs.com/wanson/p/10017531.html