zoukankan      html  css  js  c++  java
  • C语言基础:C语言结构体(5)

    上一节, 我们讲解了结构体数组, 这次我们来讲解指向结构体的指针, 之前我说过, 只要有地址, 指针就能指向它, 那么下面我们来看看结构体的指针吧~~~


    下面我们来看一个例子:

    #include <stdio.h>
    
    int main()
    {
        struct Student
        {
            int age;
            char *name;
        };
        
        struct Student sut1 = {20, "小明"};
        
        printf("%d  %s
    ", sut1.age, sut1.name);
        
        return 0;
    }

    按照常规, 我们是这样子定义结构体, 并且调用结构体, 但是用了指针, 我们就有了其他的调用方式, 下面我们继续来看例子:

    #include <stdio.h>
    
    int main()
    {
        struct Student
        {
            int age;
            char *name;
        };
        
        struct Student stu = {20, "小明"};
        
        printf("stu = %d  stu = %s
    ", stu.age, stu.name);
        printf("stu = %p
    ", &stu);
        
        struct Student *p;
        
        p = &stu;
        // 这不是最常用的写法
    //    printf("p = %d p = %s
    ", (*p).age, (*p).name);
        
        // 下面这个才是我们结构体指针最常用的写法
        printf("p = %d p = %s
    ", p->age, p->name);
        printf("p = %p
    ", p);
        
        return 0;
    }

    输出的结果:



    下面我们来看看示意图:



    指针p存的是结构体stu的地址, 可以间接调用里面的成员, 所以也就有我们所看到的输出结果啦~~~



    好了, 这次就到这里吧~~~剩下的东西和之前讲指针里面的知识点都差不多的, 所以这里就不多介绍了~~~

  • 相关阅读:
    iOS自动化编译
    PlistBuddy
    用PlistBuddy修改Plist文件
    ios app 开发中ipa重新签名步骤介绍
    iOS 开发 Framework
    线程同步--线程间通信
    Linux 下 Redis 安装详解
    服务器响应头隐藏X-power-by
    git 初始化
    删除文件夹里的 .svn,
  • 原文地址:https://www.cnblogs.com/iOSCain/p/4282882.html
Copyright © 2011-2022 走看看