永发信息网

C语言中如何以结构体变量的地址作为函数形参,以便将指向结构体变量的指针传递给它?

答案:6  悬赏:0  手机版
解决时间 2021-11-23 19:50
  • 提问者网友:太高姿态
  • 2021-11-23 01:19
C语言中如何以结构体变量的地址作为函数形参,以便将指向结构体变量的指针传递给它?
最佳答案
  • 五星知识达人网友:一把行者刀
  • 2021-11-23 01:34
C语言中,所有的变量都存储在内存中,可以通过&运算符获得变量的内存地址,函数调用时,只需要把普通变量前加上&符号,就可以达到传递变量地址的目的。
例如:
定义一个结构体类型
struct Yearmonthday

    int year, month, day;
};定义相关函数,参数类型指定为结构体类型指针
void input(struct Yearmonthday *p1) //函数形参p1是结构体指针类型
{
    printf("请输入年,月,日:");
    scanf("%d,%d,%d",&p1->year,&p1->month,&p1->day);
}在主函数中定义一个结构体变量,调用相关函数,传递变量地址
int main()

    struct Yearmonthday ymd;
    input(&ymd); //传递变量地址,以便带回数据
    printf("date=%d/%d/%d
", ymd.year, ymd.month, ymd.day ); //输出结果
    return 0;
}
全部回答
  • 1楼网友:人间朝暮
  • 2021-11-23 04:33
已经调通了同时以指向结构体变量的指针作为形参和实参,但不知道如何以结构体变量的地址作为形参?
  • 2楼网友:举杯邀酒敬孤独
  • 2021-11-23 04:24
你可以用取引用符的格式作为形参
  • 3楼网友:孤独的牧羊人
  • 2021-11-23 03:40
结构就是个类型,跟普通类型用法没有任何区别,别被吓到了
  • 4楼网友:酒者煙囻
  • 2021-11-23 03:14
以指向结构体变量的指针作为形参struct 结构提名 *指针
  • 5楼网友:一袍清酒付
  • 2021-11-23 01:56
*p=&ymd;

这句应是
p=&ymd;追问现在以指向结构体变量的指针为形参时形参为:struct Yearmonthday *p1。这个没有问题。那么以结构体变量的地址为形参时形参应是什么?追答是地址。*P,是指向地址的数据,你要传地址过去,只能用P=&ymd
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯