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

北京网站建设报价打造龙头建设示范

北京网站建设报价,打造龙头建设示范,张家港网站建设制作,网站申请要多少钱一、结构体的声明 1. 结构体的基本概念 结构体是一些值的集合#xff0c;这些值称为成员变量。结构体的每个成员可以是不同类型的变量。结构体使得C语言有能力描述复杂类型。 如学生#xff0c;有姓名、学号、性别等#xff1b;如书#xff0c;有作者#xff0c;出版日期…一、结构体的声明 1. 结构体的基本概念 结构体是一些值的集合这些值称为成员变量。结构体的每个成员可以是不同类型的变量。结构体使得C语言有能力描述复杂类型。 如学生有姓名、学号、性别等如书有作者出版日期价格等 2. 结构体的声明 1声明格式为 struct tag {member-list; }variable-list;其中member-list为结构体成员变量列表variable-list为需要创建的结构体变量的列表 例如描述一个学生的结构体声明就可以写成 struct Stu {char name[20];//名字int age;//年龄char sex[5];//性别char id[20];//学号 };//分号不能丢3. 结构体的成员类型 结构体的成员可以是标量、数组、指针甚至是其他结构体 4. 结构体变量的定义和初始化 1定义 沿用上面描述学生的声明声明一个结构体变量可以有两种方式 声明类型的同时定义变量即将变量名直接写在变量列表中或者另起一行像定义其他类型变量一样定义结构体变量 如下面这段代码 struct Stu {char name[20];int age;char sex[5];char id[20]; }Stu1,Stu2; //声明类型的同时定义变量Stu1和Stu2 struct Stu Stu3; //另起一行定义结构体变量Stu3注意这里另起一行定义结构体变量的写法与下面即将提到的另一种方式区别 还有一种定义方式不过此时结构体声明部分与上面的略有不同因为用到了 typedef类型重命名关键字代码如下 typedef struct Stu {char name[20];int age;char sex[5];char id[20]; }Stu;注意这里最后的Stu不是上面说所的变量列表中的内容即不是声明类型的同时定义的变量而是这个结构体类型的一个重命名此时定义一个结构体变量的正确写法就应为Stu Stu4当然写成struct Stu Stu4;也没错。但需要注意上面没有用typedef关键字进行类型重命名的声明只能写成struct Stu 变量名;而不能写成Stu 变量名; 2初始化 即定义变量的同时赋予初值 这里继续沿用上面学生的声明 struct Stu {char name[20];int age;char sex[5];char id[20]; }Stu1 {小明,16,男,124410} //声明类型的同时定义变量Stu1 struct Stu Stu2 {小红,16,女,124450}; //另起一行定义结构体变量Stu2结构体的嵌套初始化 struct Node {int data;struct Point p;struct Node* next; }n1 {10, {4,5}, NULL}; //结构体嵌套初始化 struct Node n2 {20, {5, 6}, NULL};//结构体嵌套初始化5. 补充说明 结构体的声明一般是放在主函数之外的故声明类型的同时定义的变量一般为全局变量。虽然语法也允许结构体的声明放在主函数中不过一般不这么做。 二、结构体成员的访问 1. 结构体变量访问成员 结构变量的成员是通过点操作符 ‘ . ’ 访问的。点操作符接受两个操作数形式为结构体变量名.成员变量名。如下面这段代码 #include stdio.h struct Stu {char name[20];//名字int age;//年龄char sex[5];//性别char id[20];//学号 }Stu1 { 小明,16,男,124410 };//分号不能丢int main() {printf(%s\n, Stu1.name);printf(%d\n, Stu1.age);printf(%s\n, Stu1.sex);printf(%s\n, Stu1.id);return 0; }运行结果 2. 结构体指针访问成员 有时候我们得到的不是一个结构体变量而是指向一个结构体的指针。 那么此时我们通过另一个操作符 ‘-’ 进行访问。如下代码 #include stdio.h struct Stu {char name[20];int age; };void print(struct Stu* ps) {printf(name %s age %d\n, (*ps).name, (*ps).age);//使用结构体指针访问指向对象的成员printf(name %s age %d\n, ps-name, ps-age); }int main() {struct Stu s { zhangsan, 20 };print(s);//结构体地址传参return 0; }运行结果 代码中的print函数的参数是一个结构体指针故在进行参数传递时传的是结构体的地址下面一部分还会说明那么在print函数内部进行的成员访问实际上是通过结构体指针进行的。所以用到操作符 ‘-’ 。 由运行结果可以看出使用操作符 ‘-’ 就等价于先解引用结构体指针得到结构体变量再通过操作符 ‘ . ’ 进行成员访问。 三、结构体的传参 结构体的传参和变量的传参一样分为值传递和地址传递。结构体在进行传参时一般用的都是地址传递即传递结构体的地址。 原因函数传参的时候参数是需要压栈的。如果传递一个结构体对象的时候结构体过大参数压栈的的系统开销比较大所以会导致性能的下降。 本章完。 看完觉得有觉得帮助的话不妨点赞收藏鼓励一下有疑问或有误地方的地方还恳请过路的朋友们留个评论多多指点谢谢朋友们
http://www.hkea.cn/news/14511630/

相关文章:

  • 招聘网站开发兼职成都市住房与城乡建设局网站
  • 高端建站和普通建站有哪些不同淄博网站开发公司
  • 网站个人备案流程网站建设公司网站源码
  • 漳平网络建站公司住房和城乡建设部网站质保金
  • 罗湖附近公司做网站建设嘉兴网站推广平台
  • 淮安淮阴网站建设百度app最新版本
  • 怎样注册平台网站网站搭建策划书
  • 资深的网站建设上海手机网站建设哪家专业
  • 设计做网站海洋高端的专业做网站
  • 营销型网站排成都全美网站建设
  • mvc 网站建设wordpress朗读文章
  • 网站系统升级维护需要多长时间青岛市住房城乡建设厅网站
  • vs做网站怎样添加图片PHP长沙WordPress
  • 我做服装设计师的 求推荐资源网站网站底部代码特效
  • 网站主机 流量织梦后台做的网站怎么绑定域名
  • dw不会写代码能建立网站吗网站建设与管理淘宝
  • 手机餐饮网站开发常州网站建设百科
  • 程序员用来做笔记的网站网站的结构布局
  • 内蒙古城乡和建设厅网站谷歌seo网站建设
  • 哈尔滨住房城乡建设局网站首页家具设计软件有哪些
  • 深圳网站制作哪家价格便宜手机怎样创建网站
  • 昌吉网站建设wdcp wordpress搬家
  • 爱站网seo综合查询工具百度智能小程序是什么
  • 福州哪里做网站做布料的著名网站
  • 淄博市建设档案馆网站wordpress 邮件
  • 服务器IP做网址打开网站wordpress特定用户特定分类
  • 企业网站名称怎么写网站开发用什么系统比较好?
  • 礼品回收网站建设网站建设买服务器还是数据库
  • 安徽网站排名优化公司网站布局结构主要分为
  • php做商城网站步骤如何做免费网络推广