Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何创建包含两个头文件的单个C源文件?_C - Fatal编程技术网

如何创建包含两个头文件的单个C源文件?

如何创建包含两个头文件的单个C源文件?,c,C,是否有方法使用指向唯一头文件的不同配置(或不同方法)设置单个项目 我想创建一个包含两个头文件的C项目(例如header1.h和header2.h)。在.c源文件中,我定义了两种配置。e、 g: int main() { #ifdef _print1_ #include "header1.h" #elif _print2_ #include "header2.h" #endif return 0; } 例如,现在我只想打印任何字符串作为输出。所以我想在头文件中声明什么。也就是说,

是否有方法使用指向唯一头文件的不同配置(或不同方法)设置单个项目

我想创建一个包含两个头文件的C项目(例如
header1.h
header2.h
)。在.c源文件中,我定义了两种配置。e、 g:

int main() 
{ 
#ifdef _print1_ 
#include "header1.h" 
#elif _print2_
#include "header2.h" 
#endif 
return 0; 
} 
例如,现在我只想打印任何字符串作为输出。所以我想在头文件中声明什么。也就是说,
#ifdef print1
需要执行
header1.h
#elif print2
需要执行
header1.h
。请注意,我需要在不同文件夹中使用相同文件名的头文件

你能请任何人帮我吗?

如果你这样做,请这样做:

#ifdef _print1_ 
#  include "header1.h" 
#elif _print2_
#  include "header2.h" 
#endif 

int main(void) 
{ 
  ...

  return 0; 
} 

什么?为什么?如果<代码>标题> H./C>和 Heale2.H>代码>文件可以有意义地包含在主()/<代码>的中间,这意味着它们包含代码,应该命名为“代码> .c/COD>”。在命令行中,
\u print1
\u print2
在哪里定义?我想你应该在这里解释一下你的最终目标是什么,因为我觉得可能有一种不同的更正确的方法来实现它。这是一个非常糟糕的编程思想的完美例子。在函数中包含include是另一个问题。作为一个问题,似乎是一个很好的候选者,您所说的“execute
header1.h
”是什么意思?头文件不能在一般意义上“执行”。我想声明它,例如,要将任何字符串打印到控制台。我要调用header1.h进行print1配置。也要调用header2.h进行print2配置。现在我如何在头文件中声明这一点???。因此,当选择print1时,它要调用header.h并执行输出。您不能调用头文件。您只能包含它们。@nisha:“现在我如何在头文件中声明它”这可能值得再问一个问题。这个问题应该包括你尝试了什么,在哪里失败了。