C语言,这题把find函数的参数和返回值都设置为结构体类型的指针变量,请问find函数怎么修改?

如题所述

struct students * find(struct students * a, int n )
{
    //中间不用修改
    return &a[p];
}

追问

哦,因为要求的是返回结构体类型的指针变量,那么定义的这个指针型函数的类型也要是struct student类型的?

主函数里调用的,是不是要改一改呢?就是把原先的返回的下标的方括号去掉即可了是么?
改成 max=find(s,N)?

返回值我比较费解。。。它返回的是最大值所在下标的地址,那实质就是返回a+p么?

追答

主函数要把
struct student *max;

然后调用语句修改为 max=find(s,N);

最后打印的语句中 max 后面不要用 点而是 用 ->

看来你对指针不熟悉呀

追问

是不熟悉诶,嗯嗯,明白了,子函数返回的是指针,那么主函数接收的也应该是指针,指针要想访问成员的话,得用->是吧

追答

对的!

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网