C语言day09-15指向结构体的指针

pragma mark 指向结构体的指针

pragma mark 概念

pragma mark 代码

#include <stdio.h>
int main()
{
    struct Person
    {
        int age;
        char *name;
        double height;
    };
    
    struct Person sp = {24,"lyh",1.79};
    
    /*
     通过 数据类型 来套出
    int num = 10;
    int *numP;
    numP = #
    printf("num = %i\n",*numP);
    */
    
    sp.name = "lyh";
    sp.age = 24;
    sp.height = 1.78;
    
    // 定义了一个指向结构体的指针
    struct Person *sip;
    sip = &sp;
    
    /*
    // 注意 : 报错的原因 是 因为. 的运算符的优先级 比 *高
    // 所以使用 () 扩起来 来提高优先级
    (*sip).name = "xxx";
    (*sip).age = 22;
    (*sip).height = 2.22;
    
    printf("age = %i, name = %s,height = %lf\n",(*sip).age,(*sip).name,(*sip).height);
     */
    
    sip->age = 99;
    sip->name = "ddd";
    sip->height = 2.33;
//    printf("age = %i, name = %s,height = %lf\n",(*sip).age,(*sip).name,(*sip).height);
    printf("age = %i, name = %s,height = %lf\n",sip->age,sip->name,sip->height);

    /*
     如何定义指向结构体变量的指针
     1. 拷贝结构体类型 和结构体变量名称
     2. 在类型和名称 中间加上一颗星
     
     当指针指向节哦固体之后 如何 利用指针访问结构体
     结构体变量名称.属性;
     (*结构体变量名称).属性;
     结构体变量名称->属性;
     */

    return 0;
}

    原文作者:liyuhong165
    原文地址: https://www.jianshu.com/p/31d572cd52d9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞