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

江苏省昆山市网站制作网站建设公司简介

江苏省昆山市网站制作,网站建设公司简介,做网站的安全证书,wordpress去加密版权现实生活中一个事物,会有许多属性连接起来。而C语言引入一种构造数据类型——结构体 将属于一个事物的多个数据组织起来以体现其内部联系。 一、结构体类型的定义 结构体类型 是一种 构造类型,它是由若干成员组成的,每个成员可以是一个基本…

现实生活中一个事物,会有许多属性连接起来。而C语言引入一种构造数据类型——结构体

将属于一个事物的多个数据组织起来以体现其内部联系。

一、结构体类型的定义

结构体类型 是一种 构造类型,它是由若干成员组成的,每个成员可以是一个基本数据类型或者是一个构造类型。

结构体类型的名字 是由一个关键字 struct 和 结构体名 组成的

结构体定义的一般形式:

struct 结构体类型名

{

        类型说明符1  成员名1;

        类型说明符2  成员名2;

        ...

};

struct Stu 
{int age;int ID;char name[10];
};

typedef 类型重命名

注意:

  1. struct 是结构体关键字,不能省略。结构体类型名可以省略,称为无名结构体。结构体成员可以是任何基本数据类型,也可以是数组和指针类型
  2. 定义结构体类型的语句要以结束,注意 {} 后的 ;
  3. 在编译时,系统不对定义的结构体类型分配内存空间
  4. 结构体类型与变量一样,作用范围也有全局和局部之分

 二、结构体变量的定义和初始化

struct Point
{int x;int y;
}p1;
struct Point p2;

 (1)先定义结构体类型,再定义结构体变量

struct Stu 
{int age;char name[10];
};
int main()
{//struct 结构体类型的名称 结构体变量名的列表;struct Stu stu1,stu2;return 0;
}

(2)定义结构体类型的 同时 定义结构体变量

struct 结构体类型名

{

        成员列表;

}结构体变量名的列表;

struct Point
{int x;int y;
}p1,pn;

(3)直接定义结构体变量

struct 
{int age;int num;char sex;
}s1,s2;

初始化可以指定成员初始化 

三、结构体成员的访问

1.结构体变量访问成员

结构体变量的成员是通过 点操作符( . ) 访问的。点操作符接收两个操作数

#include<stdio.h>
#include<string.h>
struct Stu
{int age;char name[10];
};
int main()
{struct Stu s;s.age = 18;strcpy(s.name,"zhangsan");printf("%s %d",s.name,s.age);return 0;
}

【结果】zhangsan  18

从调试上我们也可以看到

 

2.结构体指针访问指向变量的成员 

#include<stdio.h>
struct Stu
{	char name[10];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",18};Print(&s);return 0;
}

 如果只是打印成员,可以不传址

(建议传址,因为运行效率高)

四、结构体传参

#include<stdio.h>
struct S 
{int data[100];int num;
};
struct S s = { {1,2,3},100 };
//结构体传参
void print1(struct S s)
{printf("%d\n",s.num);
}
//结构体地址传参
void print2(struct S *ps) 
{printf("%d\n",ps->num);
}
int main() 
{print1(s);print2(&s);return 0;
}

【结果 】100  100

根据上方代码 print2函数要好一些

因为函数传参的时候,参数是需要压栈的

如果传递一个结构体对象的时候,结构体过大,参数压栈的系统系统开销比较大,所以会导致性能的下降

结构体传参的时候,要传结构体的地址 

http://www.hkea.cn/news/362752/

相关文章:

  • 网站空间哪家做的好网络营销的常用工具
  • 网站开发具体问题优化营商环境
  • wordpress4.5 火车头廊坊seo培训
  • 怎么做多个网站单点登录艺考培训
  • 网站怎么做双语种seo关键词如何设置
  • 用java做的游戏下载网站有哪些内容成都网络推广优化
  • 慈溪市网站建设google官网
  • 网站建设计划seo网站排名优化软件是什么
  • 大连网站建设谁家好郴州网站定制
  • 网站建设背景怎么写一个企业该如何进行网络营销
  • 为女朋友做的表白网站百度大数据分析工具
  • 上海高端网站建设服务公seo推广公司
  • 找人合伙做网站平台仿站定制模板建站
  • 深圳市网站建设科技公司腾讯网网站网址
  • wordpress语言文件夹seo销售好做吗
  • 河北建设集团官网西安网站seo
  • 在外汇局网站做登记报告恢复原来的百度
  • 做外贸做的很好的网站全国疫情突然又严重了
  • 开发app需要什么样的团队百度seo优化培训
  • ftp上传网站之后软文什么意思范例
  • 询广西南宁网站运营推广系统
  • wordpress侧边栏小工具佛山网站优化
  • 用vs做网站原型企业培训课程有哪些内容
  • wordpress评论自定义百度刷排名seo
  • 四川建设网官网登录入口泉州seo外包
  • 网站有备案 去掉备案网络营销意思
  • 新建网站推广给企业百度问一问在线咨询客服
  • 曹鹏wordpress建站seo视频广东疫情防控措施
  • 网站开发的岗位排名优化工具
  • 岳阳做网站怎么做推广让别人主动加我