• 指向结构体指针的例子


    #include<stdio.h>
    #define LEN 20
    struct names
    {
      
    char first[LEN];
      
    char last[LEN];
    };

    struct guy
    {
      
    struct names handle;
      
    char favfood[LEN];
      
    char job[LEN];
      
    float income;
    };

    int main(void)
    {
         
    struct guy fellow[2]=
         {
            {{"Ewen","Villard"},"grilled salmon","personality coach",58112.00},
            {{"Rodney","Swillbelly"},"tripe""tabbid editor",232400.00}
        };
         
        
    struct guy *him;

        printf("address #1: %p  #2: %p\n",&fellow[0],&fellow[1]);
        
        him=&fellow[0];

        printf("pointer #1: %p #2: %p\n",him,him+1);

        printf("him->income is $%.2f  (*him)income is $%.2f\n",him->income,(*him).income);

        him++;

        printf("him->favfood is %s  him->handle.last is %s\n",him->favfood,him->handle.last);

        
    return 0;
    }
    输出结果

    address #1:0x0012fea4 #2:0x0012fef8

    pointer #1:0x0012fea4 #2:0x0012fef8

    him->income is $58112.00: (*him).income is $58112.00

    him->favfood is tripe: him->handle.last is Swillbelly
     

     

    结构(fellow)作为函数的参数传递分类 
    1:传递结构成员      例如:function(fellow[0].income)
    2:传递结构地址      例如:function(&fellow[0])
    3:把结构作为参数传递  例如:function(fellow[0])
    4:把一个结构赋值给另外一个结构 例如:fellow[0]=fellow[1]
    5:结构不能直接赋值给指针(需&取地址),而数组可以直接赋值给指针   例如:p=&fellow[0] 或 p=数组名

  • 相关阅读:
    php注释规范
    Jquery元素选取、常用方法
    pdo 添加数据
    pdo 访问数据库
    session / cookie 区别与应用
    注册审核
    分页 --条件查询再分页
    Python 第二十九章 socket通信
    Python 第二十八章 网络初识+五层协议+三次握手四次挥手
    Python 第二十六章 面向对象 元类+反射+双下方法
  • 原文地址:https://www.cnblogs.com/xiaobaigang/p/2058196.html
Copyright © 2020-2023  润新知