结构体——小结

  一,结构体优点如下,

 (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)等等,这时候就需要用到结构体了。而数组里面的数据类型和长度必须保持一致。

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

转载于:https://www.cnblogs.com/FCWORLD/archive/2010/12/08/1900671.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值