结构体定义与使用
#include <stdio.h>
#include <stdlib.h>
/**
* 结构体定义与使用
*/
typedef struct {
char *name;
int age;
char sex;
struct Like {
char *game;
} like;
struct Eat {
char *food;
} eat;
} Cat;
int main() {
// 栈区 静态
Cat cat = {"red cat", 1, 'm', {"wzry"}, {"fish"}};
printf("cat name %s, age %d, sex %c, like %s, eat %s\n", cat.name, cat.age, cat.sex, cat.like, cat.eat);
// 堆区 动态
Cat *cat2 = malloc(sizeof(Cat));
cat2->name = "white cat";
cat2->age = 2;
cat2->sex = 'g';
cat2->like.game = "play";
cat2->eat.food = "cat food";
printf("cat2 name %s, age %d, sex %c, like %s, eat %s\n", cat2->name, cat2->age, cat2->sex, cat2->like, cat2->eat);
free(cat2);
cat2 = NULL;
return 0;
}