【问题标题】:How to share one variable between 2 .c files?如何在 2 个 .c 文件之间共享一个变量?
【发布时间】:2014-10-14 20:18:32
【问题描述】:

考虑一个变量 abulo。我正在尝试在 2 个 .c 文件之间共享 abulo。这就是我所做的--

  1. 已创建 a.h 。该文件包含以下行, extern int abulo;
  2. a.c 包含这样的语句, int abulo = 0;
  3. 在 b.c 中,a.h 已包含在内。然后只有一个 kprintf 函数打印你的值。

但是当我尝试运行代码时,它会显示这样的输出--

undefined reference to `abulo'

尝试使用此处给出的公认答案的想法 - How do I share variables between different .c files?

我在这里做错了什么?如何摆脱这个错误?

【问题讨论】:

    标签: c extern os161


    【解决方案1】:

    您应该在构建可执行文件时链接a.o。 示例:

    cc -c a.c
    cc -c b.c
    cc a.o b.o -o executable
    #  ^^^ this is important
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-24
      • 1970-01-01
      • 1970-01-01
      • 2019-07-11
      • 2017-09-14
      相关资源
      最近更新 更多