结构体指针作为函数参数!!!
需要用到的一个接口函数,第4个参数是结构体,请问怎么传参???
下面是接口函数定义:
#define MAX_TIMESEGMENT 4
下面是那个结构体的定义:
那么我要调用这个函数接口,第四个参数应该怎么传参???
SetXXXXX(1, 5, 1, ???);//第四个参数怎么传???
下面是我自己写的传法,但每次都调用失败。
下面是接口函数定义:
#define MAX_TIMESEGMENT 4
int __stdcall SetXXXXX(
int _iLogonID //登陆的返回值
int iChannelNum //通道号
int iWeekday //星期,星期日到星期六为0~6
PNVS _strScheduleParam[MAX_TIMESEGMENT] //时间模板,支持最大4个时间段
);
下面是那个结构体的定义:
typedef struct{
unsigned short iStartHour; //开始时0-23
unsigned short iStartMin; //开始分0-59
unsigned short iStopHour; //结束时0-23
unsigned short iStopMin; //结束分0-59
unsigned short iRecordMode; //使能
)NVS, *PNVS;
那么我要调用这个函数接口,第四个参数应该怎么传参???
SetXXXXX(1, 5, 1, ???);//第四个参数怎么传???
下面是我自己写的传法,但每次都调用失败。
PNVS ps[4];
for (int i = 0; i != 4; ++i)
{
ps[i] = new NVS;
}
//假如我初始化ps[1]
ps[1]->iStartHour = 11;
ps[1]->iStartMin = 33;
ps[1]->iStopHour = 18;
ps[1]->iStopMin = 55;
ps[1]->iRecordMode = 1;
SetXXXXX(1, 5, 1, ps); //这样写???
SetXXXXX(1, 5, 1, &ps[1]);//还是这样写???
目前只有这两种写法可以执行正确,但这个接口函数的返回值是错误的,也就是说设置失败了,请问是不是还有别的传参方法。
...全文
相关推荐
C语言PPT 谭浩强 编的 非常好!!!
**函数**:阐述函数的作用、定义、调用,以及函数参数和返回值的使用。4. **指针**:讲解指针的概念、操作和用途,这是C语言的一个关键特性,也是其强大的原因之一。5.
C语言:结构体与结构体指针
结构体作为函数参数与结构体指针作为函数参数的区别: - 如果将结构体作为函数参数(如`fun(struct st bc)`),这是值传递,函数内部对`bc`的修改不会影响到调用者。
结构体类型数据作为函数参数(三种方法)
本文主要讨论了在C++编程中如何将结构体类型数据作为函数参数的三种方法。首先,我们探讨了直接使用结构体变量名作为参数的情况。这种方式属于"值传递",即将整个结构体变量的副本传递给函数。这虽然直观,但在
详解C++中的指针结构体数组以及指向结构体变量的指针
在C++编程语言中,指针是用于存储内存地址的变量,而结构体则是一种自定义的数据类型,它可以包含多个不同类型的成员。本篇将深入探讨如何使用指针与结构体数组,以及如何操作指向结构体变量的指针。
c语言指针变量作为函数参数传递
函数参数传递的指针也可以指向函数,这种指针被称为函数指针。函数指针允许程序在运行时动态调用不同的函数,这在实现回调函数或策略模式等设计模式时非常有用。


