【建站服务】张掖淘宝装修/张掖京东店铺设计/张掖拼多多网店装修公司/张掖企业网店开通申请-网店装修设计-域名申请
作者: 风兰 . 阅读量: 5 . 发表时间:2022-09-21 03:13:30
上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
张掖淘宝装修/张掖京东店铺设计/张掖拼多多网店装修公司/张掖企业网店开通申请-网店装修设计

运行结果如下:
No. name sex age10101 Li Lin M 1810102 Zhang Fun M 1910103 Wang Min F 20
注意以下两点:
(
1)如果 p 的初值为 stu,即指向第一个元素,则 p + 1 后指向下一个元素的起始地址。例如:
(++p) -> num 先使 p 自加 1 ,然后得到它指向的元素中的 num 成员的值(即10102)。
(p++) ->num 先得到 p->num 的值(即10101),然后使 p 自加 1 ,指向 stu[1]。
注意以上二者的不同。
(2)程序已定义了指针 p 为指向 struct student 类型数据的变量,它只能指向一个 struct student 型的数据(p 的值是 stu 数组的一个元素的起始地址),而不能指向 stu 数组元素中的某一成员,(即 p 的地址不能是成员地址)。例如,下面是不对的:
p = &stu[1].name
编译时将出错。千万不要认为反正 p 是存放地址的,可以将任何地址赋给它。如果地址类型不相同,可以用强制类型转换。例如:
p = (struct student *)&stu[1].name;
此时,在 p 中存放 stu[1] 元素的 name 成员的起始地址。
将一个结构体变量的值传递给另一个函数,有3个方法:
(1)用结构体变量的成员作参数,例如:用 stu[1].num 或 stu[2].name 作函数实参,将实参值传给形参。用法和用普通变量作实参是一样的,属于 值传递 方式。应当注意实参与形参的类型保持一致。
(2)用结构体变量作参数。老版本的C系统不允许用结构体变量作实参,ANSI C取消了这一限制。但是用结构体变量作实参时,采取的是 值传递 的方式,将结构体变量所占的内存单元全部顺序传递给形参。形参也必须是同类型的结构体变量。在函数调用期间形参也要占用内存单元。这种传递方式在空间和时间上开销较大,如果结构体的规模很大时,开销是很可观的,此外由于采用值传递方式,如果在执行被调用函数期间改变了形参(也是结构体变量)的值,该值不能返回主调函数,这往往造成使用上的不便。因此一般较少用这种方法。
(3)用指向结构体变量(或数组)的指针作实参,将结构体
向结构体变量(或数组)的指针作实参,将结构体变量(或数组)的地址传给形参。
用结构体变量作函数参数。
实例
#include <stdio.h>
#define FORMAT "%d %s %f %f %f "
struct student
{
int num;
char name[20];
float score[3];
};
void print(struct student stu)
{
printf(FORMAT, stu.num, stu.score[0], stu.score[1], stu.score[2]);
printf(" ");
}
void main()
{
struct student stu;
stu.num = 12345;
strcpy(stu.name, "Li Li");
stu.score[0] = 67.5;
stu.score[1] = 89;
stu.score[2] = 78.6;
printf(stu);
}
将上面改用指向结构体变量的指针作实参。
实例
#include <stdio.h>
#define FORMAT "%d %s %f %f %f "
struct student
{
int num;
char name[20];
float score[3];
}stu = {12345, "Li Li", 67.5, 89, 78.6};
void print(struct student *p)
{
printf(FORMAT, p->num, p->name, p->score[0], p->score[1]
张掖淘宝装修/张掖京东店铺设计/张掖拼多多网店装修公司/张掖企业网店开通申请-网店装修设计
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站


