可以的,不过传入的是改结构体的一个副本缺饥手
成都创新互联主要从事成都网站制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务万宁,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
如果需要在函数中更改结构肢迹体内容,可以把这个结构体的指针作为参数传入函数,返回的也是伏嫌该结构体的指针
c语言的结构体是一组数据的友祥组合,并不是简单的单一类型。所以在查找和输出的时候,均不能直接操作,而是要进行变通。
1
查找。
对于以某一项为关键字进行查找时,比如在结构体中有int型的成员a,要查找a为100的结构体变量,这时需要遍历每个结构体(数组、链表、或者其它任意形式),对每个元素的成员a值进行比较,符合的则表示查找成功。
对于结构体中元素较多,同时要对整个结构体每个元素都匹配才算查找到的特殊情况,可以使用memcmp的方式,整体进行比较,以减少代码量。不过这种情况较为少见,不过多描述。
2
输出。
对于结构体的输出,其乎告斗实就是对其每一项,或者若干项成员变量的输出。岁磨
所以可以使用基本的输出函数,对每一项单独输出,输出中为了方便阅读,可以加一些说明文字。
如果对结构体输出有多处调用的需求,可以在将该功能封装为函数,供各个需要的函数调用。这样的好处是,当结构体的成员出现变化,或者结构体输出要求更改时,修改一处代码即可完成所有的输出修改,实现易于维护的效果。
表示这个函数的返回值并键 是结构体
这个函数 Gear_state
参数两个, 第一个是u8, 第二个是Gear_Poisition_TY结构体。
返回值类型为冲扮结构体类型。
比绝判巧如 你可以这样调用
Gear_Poisition_TY a,b;
对a初始化 或者赋值。
然后
b=Gear_state(0, a);