所以我最近做了一些Java和C#人。我有一个头文件,它有一个函数void update(struct process* foo, float measurements)
,并且在头文件(.c文件)的实现中我将拥有功能:
void update(struct process* p,float measurements)
{
*p.speed = *p.speed + measurements;
*p.time = *p.time + 1;
*p.noise = *p.noise + ((measurements)/100);
}
现在在Java中,我必须导入类进程,这一切都会很好。但是在.c实现中如何在不声明.c文件中的结构的情况下执行此操作(由于我想使用它从另一个模块传递参数,这将是没有意义的)?
我是C的新手,可能是一个非常基本的问题,但我在互联网上进行了一小时搜索,结果却找不到我要找的东西。也许我的关键词选择不当。
答案 0 :(得分:1)
您包含process
结构定义所在的文件。
正如@AusCBloke注意到的那样,您将使用(*p).
取消引用结构指针并访问其成员,或p->
这是(*p).
的语法糖