当前位置: 首页 > news >正文

杭州网站建设哪家强中企动力科技股份有限公司待遇

杭州网站建设哪家强,中企动力科技股份有限公司待遇,ciid中国室内设计大奖赛,威海营销型网站建设Author:AXYZdong 硕士在读 工科男 有一点思考,有一点想法,有一点理性! 定个小小目标,努力成为习惯!在最美的年华遇见更好的自己! CSDNAXYZdong,CSDN首发,AXYZdong原创 唯…

Author:AXYZdong 硕士在读 工科男
有一点思考,有一点想法,有一点理性!
定个小小目标,努力成为习惯!在最美的年华遇见更好的自己!
CSDN@AXYZdong,CSDN首发,AXYZdong原创
唯一博客更新的地址为: 👉 AXYZdong的博客 👈
B站主页为:AXYZdong的个人主页

系列文章目录

  • C++基础入门丨1. 初识C++像极了C语言
  • C++基础入门丨2. 数据类型基础
  • C++基础入门丨3. 搞明白4类运算符——运算符
  • C++基础入门丨4. 程序结构有哪几种?——程序流程结构
  • C++基础入门丨5. 数组——一维数组和二维数组
  • C++基础入门丨6. 函数——定义、调用和声明
  • C++基础入门丨7. 指针——一文搞懂指针

操作系统:Windows 10
IDE:Visual Studio 2019

文章目录

      • 系列文章目录
    • 1 什么是结构体
    • 2 结构体的定义和使用
    • 3 结构体数组
    • 4 结构体指针
    • 5 结构体嵌套结构体
    • 6 结构体做函数参数
    • 7 结构体中 const 使用场景

1 什么是结构体

结构体属于用户自定义的数据类型,允许用户存储不同的数据类型。

2 结构体的定义和使用

语法struct 结构体名 { 结构体成员列表 };

通过结构体创建变量的方式有三种:

  1. struct 结构体名 变量名
  2. struct 结构体名 变量名 = { 成员1值 , 成员2值…}
  3. 定义结构体时顺便创建变量
#include<iostream>
#include<string>
//学生结构体定义
struct Student
{string s_name;int score;
};
//老师结构体定义
struct Teacher
{string t_name;Student sArray[5];
};int main()
{Teacher tArray[3];		//创建三名老师的数组system("pause");return 0;	
}
  • 定义结构体时的关键字是 struct ,不可省略
  • 创建结构体变量时,关键字 struct 可以省略
  • 结构体变量利用操作符 . 访问成员

3 结构体数组

将自定义的结构体放入到数组中方便维护。

语法:struct 结构体名 数组名[元素个数] = { {} , {} , … {} }

	//结构体数组struct student arr[3]={{"张三",18,80 },{"李四",19,60 },{"王五",20,70 }};

4 结构体指针

通过指针访问结构体中的成员。

操作符 -> 可以通过结构体指针访问结构体属性。

#include<iostream>
#include<string>using namespace std;//结构体定义
struct student
{//成员列表string name;  //姓名int age;      //年龄int score;    //分数
};int main() {struct student stu = { "张三",18,100, };struct student* p = &stu;p->score = 80; //指针通过 -> 操作符可以访问成员cout << "姓名:" << p->name << " 年龄:" << p->age << " 分数:" << p->score << endl;system("pause");return 0;
}

在这里插入图片描述

5 结构体嵌套结构体

结构体中的成员可以是另一个结构体。

//学生结构体定义
struct Student
{string s_name;int score;
};
//老师结构体定义
struct Teacher
{string t_name;Student sArray[5];	//嵌套了学生的结构体
};
  • 在结构体中可以定义另一个结构体作为成员,用来解决实际问题

6 结构体做函数参数

将结构体作为参数向函数中传递。

传递方式有两种:

  • 值传递
  • 地址传递
#include<iostream>
#include<string>using namespace std;//结构体定义
struct student
{//成员列表string name;  //姓名int age;      //年龄int score;    //分数
};
//值传递
void printstudent1(student stu)
{stu.age = 20;cout << "姓名:" << stu.name << " 年龄:" << stu.age << " 分数:" << stu.score << endl;
}
//地址传递
void printstudent2(student * stu)
{stu->age = 20;cout << "姓名:" << stu->name << " 年龄:" << stu->age << " 分数:" << stu->score << endl;
}
int main() {struct student stu = { "张三",18,100, };printstudent1(stu);cout << "主函数中 姓名:" << stu.name << " 年龄:" << stu.age << " 分数:" << stu.score << endl;printstudent2(&stu);cout << "主函数中 姓名:" << stu.name << " 年龄:" << stu.age << " 分数:" << stu.score << endl;system("pause");return 0;
}

在这里插入图片描述

  • 在使用地址传递时,形参的改变会影响实参,在上述程序中也就是改变了主函数中的数据。而值传递不会改变主函数中的数据。
  • 如果不想修改主函数中的数据,用值传递,反之用地址传递。

7 结构体中 const 使用场景

const 来防止误操作。

void printStudent(const student *stu) //加const防止函数体中的误操作
{//stu->age = 100; //操作失败,因为加了const修饰cout << "姓名:" << stu->name << " 年龄:" << stu->age << " 分数:" << stu->score << endl;}
  • 在结构体指针前加 const 时,就无法通过结构体指针来修改数据,也就是写操作失效,只可进行读操作。

Reference

  • [1]:https://www.bilibili.com/video/BV1VJ411M7WR

—— END ——


如果以上内容有任何错误或者不准确的地方,欢迎在下面 👇 留言。或者你有更好的想法,欢迎一起交流学习~~~

更多精彩内容请前往 AXYZdong的博客

http://www.laogonggong.com/news/84009.html

相关文章:

  • pc 移动网站 模板网站建设后台管理怎么管理
  • 深圳市 网站建设450百度域名怎么注册
  • 2019河北省建设厅检测员报名网站南京蓝牙app开发公司
  • 百度收录网站图片贵州最近爆发的传染病
  • 劳务公司网站建设企业自助建站哪家好
  • 聊城网站建设有限公司wordpress排序desc
  • 网站建设流程图解一个专做窗帘的网站
  • 站长友情链接绥化网站建设兼职
  • 网站开发及维护费用企业推广策划书模板
  • 纯静态网站 维护广州哪里能做英文核酸
  • 做seo用哪种建站程序最好手机访问asp网站
  • 做简单的html网站wordpress自定义文章类型输出数量
  • 网站推广方法主要有哪几种网站建设兼职劳务协议
  • 国内外优秀网站如何组建商业网
  • 木蚂蚁网站正在建设中长春网站设计长春网络推广
  • 网站模板如何修改域名郑州seo优化服务
  • 济宁市做网站怎么做网络营销推广
  • 做装修工程找什么网站接单国外海报设计网站
  • 公司网站打不开海口专业做网站
  • 如何做企业黄页网站汕头seo网站推广费用
  • discuz修改网站底部垂直网站怎么做
  • 服务器外面打不开网站网站推广律师关键词有哪些
  • 辽宁专业网站建设大全眼镜网站模板
  • 集团门户网站建设方案 php网站开发报价和开发周期
  • 公司建设网站注意事项wordpress中文备份
  • 如何用框架做网站网站项目团队介绍怎么写
  • 东莞万江网站建设孵化器网站建设方案
  • 保定网站开发公司做网站空间百度云和阿里云区别
  • 济南企业网站推广方法宁波网络营销推广公司
  • 企业网站建设应该wordpress拨号按钮