当前位置: 首页 > 面试题库 >

如何使用另一个源文件中定义的结构?

堵存
2023-03-14
问题内容

我将Linux用作编程平台,将C语言用作编程语言。

我的问题是,我在主源文件(main.c)中定义了一个结构:

struct test_st
{
   int state;
   int status;
};

所以我希望这个结构可以在我的其他源文件(例如othersrc。)中使用。是否可以在另一个源文件中使用此结构而不将其放在标头中?


问题答案:

您可以使用指向它的指针,othersrc.c而不必包括它:

othersrc.c:

struct foo
{
  struct test_st *p;
};

但是否则,您需要以某种方式包括结构定义。一个好的方法是在main.h中定义它,并将其包含在两个.c文件中。

main.h:

struct test_st
{
   int state;
   int status;
};

main.c:

#include "main.h"

othersrc.c:

#include "main.h"

当然,您可能会找到比main.h更好的名称。



 类似资料:
  • 问题内容: 我是PHP的新手,我使用Eclipse SDE构建一个简单的Web应用程序。 我的方案是: 我有 index.php 页面,其中包括登录表单( 2个文本框和Login Button ) 我有包含两个表的MySQL数据库:system_users和user_errors 每当用户成功在index.php页面中登录时,这都应将其重定向到 page1.php ,然后从user_errors表

  • 我正在使用由Visual Studio生成的gRPC服务项目。我有两个原型文件位于同一个“原型”目录中。我有一个原型,另一个原型文件有导入。它似乎找到了文件,但我无法引用来自另一个文件的任何消息。当我这样做时,我得到一个“blahblah”是未定义的错误。我已经拍摄了一些情况的屏幕截图。任何帮助都将不胜感激!

  • 问题内容: 我们有两个不同的Web应用程序,我们想将一场战争的几个控制器扩展到另一场战争。 我们正在使用maven来构建项目。 包括战争,我们已经将其作为 无法建立给类未找到异常。 谁能帮我实现这个目标? 我收到错误Maven构建失败: 问题答案: 您可以定义war插件以生成一个单独的jar文件,该文件可以通过分类器根据配置进行使用: 之后,您可以将其用作其他项目中的单独依赖项。但是最好用它制作一

  • 我有三份工作。它们是。 必须并行运行和。 这些作业定义文件如下所示。 job1.xml

  • 我正在使用log4j2进行一个项目,我的log4j2中有一些值。可配置的属性。该项目还将包括其他组件的配置文件。理想情况下,我希望将所有配置保存在一个地方,以便能够在同一个文件中为log4j设置那些可配置的值,这样我就不会有两个不同的地方更改配置值(例如,包括环境变量)。 我在这方面找到的方法并不理想,比如让我的项目的其他部分从主配置文件中读取值,并将它们放入系统变量中,由log4j获取,因为我希

  • 我想创建一个自定义控件,在其中我可以设置另一个自定义控件的列表,并且我想能够像在JavaFXTableView中一样使用FXML(请参见列列表): 我只想写这样的东西: 我已经知道如何实现简单的自定义控件,但我还没有找到任何关于以这种方式组合自定义控件的方法。你能给我指个方向吗?