note:结构体占用的空间必须是最大成员占用空间的倍数。

    	struct Person
    	{
    		int age;
    		float height;
    		char *name;
    	};
    
    	struct Person p = {23,2000,"Jackit"};
    
    	printf("%d\n", sizeof(p));
    	printf("%d\n%f\n%s\n", p.age, p.height, p.name);
          
    //这是一种声明后直接使用的方式,当然也可以去掉Student直接用类似匿名结构体的方式使用 struct Student { int age; float height; char *name; }stu; stu.age = 20; printf("%d\n", stu.age);

    结构体之前在学习C++的时候学习过,C语言的结构体和Java中的类是很相似的,只是没有方法。

    谈到指针和结构体感觉使用也挺简单的:

    	struct Person person = {23,2000,"Jackit"};
    	struct Person *p_person = &person;
    	printf("%d\n%f\n%s\n", (*p_person).age, (*p_person).height, (*p_person).name);
    	printf("%d\n%f\n%s\n", p_person->age, p_person->height, p_person->name);

     

    还有一点就是结构体中可以包含其他结构体的变量,但是不可以包括自己的变量,所以用C语言去定义链表的node是不行的。