0

所以我是一个 Java 和 C# 的人,最近在做一些 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 语言的新手,可能这是一个非常基本的问题,但我在互联网上进行了一个小时的搜索,最终没有找到我想要的东西。也许我的关键字选择不当。

4

1 回答 1

1

您包括process结构定义所在的文件。

正如@AusCBloke 所注意到的,您要么使用(*p).取消引用结构指针并访问其成员,要么使用p->它的语法糖(*p).

于 2012-09-14T01:18:15.037 回答