C++之结构体struct
2018-06-17 21:07:26来源:未知 阅读 ()
原创博客,转载请注明出处!
1.简介
# C++提供一些基本的数据类型(int,float,double,char等),但由于程序处理的问题通常较复杂,基本的数据类型不能满足程序需要,因此C++允许用户根据需要自定义数据类型。C/C++的结构体是包含相同/不同数据类型数据项的组合项,关键字struct标识结构体。
2.结构体类型的声明
# 如果在文件开头声明结构体类型,则所有的函数利用该结构体类型定义变量。
# 如果在函数中声明结构体类型,则只有本函数可以使用该结构体类型定义变量。
1 struct 结构体类型名 2 { 3 成员名; 4 };
3.结构体类型变量的定义和初始化
#先声明结构体类型后定义结构体变量
1 struct Student 2 { 3 int age; 4 char sex; 5 }; 6 Student student1={11,‘女’};
注意:Student是类型名,student1是变量名。声明结构体类型的时候,编译器不分配内存;定义结构体变量的时候,编译器分配内存。
4.引用结构体变量的成员
# 通过成员运算符引用结构体变量的成员
1 // 定义结构体变量同时初始化 2 Student stu1={11,'女'}; 3 4 // 引用结构体变量成员 5 cout<<stu1.age<<endl;
# 通过指向结构体变量的指针引用结构体变量的成员
1 Student stu1={11,'女'}; 2 Student *p = &stu1; 3 cout<<p->age<<endl;
5.用结构体变量和指向结构体变量的指针构建链表
1 #include <iostream> 2 using namespace std; 3 4 // 结构体类型声明(链表结点) 5 struct Student 6 { 7 int num; 8 int age; 9 Student *next; 10 }; 11 12 void LinkedList() 13 { 14 // 学生结点1 15 Student stu1; 16 stu1.num=101; 17 stu1.age=21; 18 19 // 学生结点2 20 Student stu2; 21 stu2.num=102; 22 stu2.age=22; 23 24 // 学生结点3 25 Student stu3; 26 stu3.num=103; 27 stu3.age=23; 28 29 // 链表头结点; 30 Student *head=&stu1; 31 32 // 学生结点建立链接 33 stu1.next = &stu2; 34 stu2.next = &stu3; 35 stu3.next = NULL; 36 37 // 打印链表 38 Student *p=&stu1; 39 40 while(p!=NULL) 41 { 42 cout<<p->num<<endl; 43 p = p->next; 44 } 45 } 46 int main() 47 { 48 LinkedList(); 49 return 0; 50 } 51
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- C++ 转换函数搭配友元函数 2020-06-10
- C++ 自动转换和强制类型转换(用户自定义类类型) 2020-06-10
- C++ rand函数 2020-06-10
- C++ 友元函数 2020-06-10
- C++ 运算符重载 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash