在C ++编译器中编译C程序

亡羊补牢为时不晚

我用C语言编写了一个程序,我想在此代码中使用C ++库,尽管我可以在g ++中编译C语言,因为C ++是在C语言的基础上构建的。但是,我无法做到这一点,并且存在主要错误因为在代码的一部分中,我编写了一个函数,该函数从main函数之前从输入文件中读取数据。在C编译器中效果很好,但在Cpp编译器中效果不好。以下是我收到的一些错误消息,因此,我想获得一些一般性的注释和要点,以便在交替使用c和cpp时考虑

 error : ‘get_inputs’ was not declared in this scope 

error: use of parameter outside function body before ‘]’ token
贾伯沃基(Jabberwocky)

以下程序在C中进行编译,并显示警告,例如:'bar'undefined; 假设extern返回int

void foo()
{
  bar(5);
}

int bar(int x)
{
   return x*2;
}

如果要使用C ++进行编译,则必须bar在使用它之前声明

int bar(int x);   // forward declaration

void foo()
{
  bar(5);
}

int bar(int x)
{
  return x*2;
}

即使在C语言中,使用前向声明并启用所有编译器警告也是一个好习惯,否则以下程序中的错误将通过:

void foo()
{
  bar();  // calling bar without argument....
}

int bar(int x)
{
  return x*2;   // ... will result in an undefined value for x here
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

C编译器错误或程序错误?

C程序的“正确编译器”命令

CMake:C编译器无法编译简单的测试程序

使用g ++编译器在Visual Studio中编译C ++程序会在最后生成%

Borland C ++编译器中的Iostream

旧的C ++编译器中的防护

编译C程序会在代码块中给出“在搜索路径中找不到编译器可执行文件(GNU GCC编译器)”

C ++编译器17

Linux C编译器

安装C编译器时,在$ PATH中找不到可接受的C编译器

在 PATH 中找不到 CLION 中的 GCC 编译器,因此无法编译简单的 C++ 程序

C ++中的奇数编译器错误(VC编译器)

在3种主要的C ++编译器中,程序进行了不同的编译。哪一个是对的?

C:Turbo C编译器中for循环的异常行为

仅Windows中的C程序编译器警告(MinGW-w64)

编译器首次到达C程序中的#include语句时会执行什么功能

为什么我的C程序在不同的编译器中给出不同的输出?

编译器在C程序中引发错误“未定义符号”

“ C ++编译器“ / usr / bin / c ++”无法编译简单的测试程序。” 尝试安装OpenCV时

在Linux服务器上编译C ++程序时Intel编译器的语法

为什么此C ++程序在某些编译器中有效,但在其他编译器中无效?C ++编译器之间的主要区别是什么?

C / C ++编译器(Windows)

Bazel CROSSTOOL文件中的C编译器选项

在Ubuntu中安装C编译器,JDK等

C ++编译器中的奇怪行为-优化?

编译器如何评估C中的条件

简单C链表中的奇怪编译器错误

C 代码在 Linux 编译器中不起作用

通用类中的编译器错误c1001