结构(函数和指针)

本文详细探讨了C语言中结构体的使用,包括如何通过函数传递结构体值和指针,以及结构体内的数组和嵌套结构。讲解了如何在函数内部修改结构体的值,以及结构体中的结构和数组的操作。强调了结构体作为返回值在函数调用中的应用,以及结构体指针的使用方式。
摘要由CSDN通过智能技术生成

​​​​​​C语言程序设计进阶_浙江大学_中国大学MOOC(慕课)

1--如p13所示,函数传进的只是值,不是指针,所以不会改变初始main函数里的结构里的值。

2--第一种方法如p14所示,首先再在input point函数中定义一个新的同类型结构,修改成你想要的值,在函数末尾返回这个结构,最后在main函数中y=inputpoint();就可以了。

3--p16当定义一个结构变量指针指向一个结构变量时,p->month=12,与(*p).month=12相同。

4--p17就为传一个结构变量地址进函数而非只是传值,返回结构变量是一种套路,可用于后续其他操作。例如下图在main函数里output();里中可以直接用getstruct返回的值,因为返回值是指针类型,所以可以直接在前面加*表示结构变量的值。

 

 

-------------------------

然后就是结构中的结构。

因为之前讲过结构成员可以是任意类型的,例如int,double,自然也可以是数组和结构。

p19--结构中的数组

每一个数组元素都有一整套结构的值。

 

p21-结构中的结构不难理解,只有一个时是today.day,那么结构中的结构就是thisyear.today.day。如果有指针p指向thisyear就是*p.today.day或者p->thisyear.day。(符号点的优先级大于*所以*p不用加括号)。

最后就是p22结构中的结构的数组,并没有超范围,只是有点复杂。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值