• 结构体——小结


      一,结构体优点如下,

     (1)可以包含不同数据类型的一个结构体

    (2)相同的结构体变量是可以相互赋值的

    (3)节省内存空间

      注意:结构体声明的时候本身不占用任何内存空间,只有当你用你定义的结构体类型定义结构体变量的时候计算机才会分配内存。

          直接内存操作避免了栈空间开辟结构变量空间的需求,节省内存。

    (4)效率高

      根据反汇编的思想,结构体在栈中是离散的,而数组在栈中是连续的,而访问起来结构体相对快一些,也在一些教材上看到过,说结构体的效率高是拿空间换取时间的,我个人认为,应该是存储和访问方式的不同而使其效率较高。(有更好的说法希望读者朋友们多多指点)

    举例: struct  data

    {

         int   num;

         char name;

         float  score;  

    };

    data  t1,t2;

    一段简单代码
    #include"iostream"
    #include
    "string"
    using namespace std;
    struct data
    {
    int num;
    char name;
    float score;

    };
    int main()
    {
    data t1,t2,t3;
    //定义结构体变量
    cin>>t1.num>>t1.name>>t1.score;
    t2
    =t1; //结构体变量之间相互赋值
    t3=t1;
    data
    *p; //结构体指针
    p=&t1; //指针指向结构体变量t1的内存地址
    cout<<t1.num<<endl<<t2.name<<endl<<t3.score<<endl; //把t1所对应的地址
    cin>>p->name>>p->num>>p->score;
    cout
    <<p->name<<endl<<p->num<<endl<<p->score<<endl;
    cout
    <<(*p).name<<endl<<(*p).num<<endl<<(*p).score<<endl;
    cin.
    get();

    }
    10;

    二,结构体的使用方向

        主要用于包含不同类型的变量时,比如,学生信息登记表,学生姓名(char),学号(int),年龄(int), 性别(char),成绩(float)等等,这时候就需要用到结构体了。而数组里面的数据类型和长度必须保持一致。

     初学,感觉有很多地方很矛盾,在以后的学习当中会逐步深入理解,也希望读者朋友们能指点迷津,一起进步,一起成长!

  • 相关阅读:
    磁盘上没有足够的空间完成此操作的解决办法_Windows小知识
    使用XAMPP和DVWA在Windows7上搭建渗透测试环境
    使用WampServer和DVWA在Windows10上搭建渗透测试环境
    DOS系统常用命令
    Kali Linux图形界面与命令行界面的切换
    SQLMap入门之在Windows上安装SQLMap
    在Windows下同时安装Python2.x和Python3.x
    Python基础之Windows下Python3.x环境搭建
    在Linux上使用PGP签名验证文件完整性
    Ubuntu软件中心的完全启用
  • 原文地址:https://www.cnblogs.com/FCWORLD/p/1900671.html
Copyright © 2020-2023  润新知