c - 两个 c 文件并将值从一个文件返回到另一个文件

标签 c file external cross-compiling

我有两个c文件。 1) aaa.c 2) bbb.c

bbb.c 文件计算数据文件(data.txt)的行数。

然后,我想将bbb.c中计算的行号包含到aaa.c中。

例如,在aaa.c中

#include<stdio.h>
#define ROW "linenumber"

在bbb.c中,

#include<stdio.h>

int main()
{
    FILE *fp = fopen("bond.txt", "r");
    int ch;
    int count =0 ;
    do
    {
        ch = fgetc(fp);
        if(ch=='\n') count++;
    }while(ch != EOF);

    return count;
}

我想使用从 bbb.c 计算到“#define Row“linenumber””中的该行号的值(计数)。

我该如何做到这一点以及如何将 aaa.c 和 bbb.c 一起编译?

最佳答案

如果可能的话,您可以在 bbb.c 中声明变量,并在 aaa.c 文件中使用 extern 告诉编译器,使其成为该文件的本地变量。

在aaa.c

#include <stdio.h>
extern int linenumbers; 
int main() {
  ...
}

bbb.c

 int linenumbers;

该变量必须在 bbb.c 中声明为全局变量,并且 aaa.c 中的 extern 也应该是全局变量。

关于c - 两个 c 文件并将值从一个文件返回到另一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22360316/

相关文章:

java - 如何修复我的扫描仪文件阅读器的 java.util.InputMismatchException?

file - vbs 文件在目录中搜索扩展名

javascript - (JavaScript) 从文件或 FileReader 对象导入外部 <object> svg

c++ - 单例中未解析的外部符号

c - 为什么打开文件描述符的数量没有增加?

c - 快速查找 IPv4 集

c - glDrawArrays 不工作。在 GTK3 中使用 GtkGLArea

c - 尝试将文件读入链接列表但程序在读取时崩溃

c++ - 在 C++ 中,如何引用不同头文件中的函数?

external - 如何指定 Yocto 使用哪个编译器工具链来构建图像?