相关疑难解决方法(0)

C与C++中的外部函数

在库的*.h头文件中C,应该声明函数

extern void f();

// or only 

void f();
Run Code Online (Sandbox Code Playgroud)
  1. 仅在使用时 C
  2. 当使用时C++.

c c++

36
推荐指数
3
解决办法
7万
查看次数

如何检查(通过预处理器)C源文件是否正在编译为C++代码

问题标题应该说明一切,但这里有一个我正在寻找的东西的例子:

#ifndef THE_IDENTIFIER_THAT_WOULD_INDICATE_BEING_COMPILED_AS_CPLUSPLUS

/*
 * Example of something that would matter.
 */
typedef enum _bool bool;
enum _bool { false, true };

#endif
Run Code Online (Sandbox Code Playgroud)

什么是标识符?它严重困扰着我,因为我知道我之前已经看过这样做的代码.

顺便说一句,我正在使用GCC.

(我很惊讶我在某个地方找不到复制件.如果其他人可以找到一个复制件,请随意重新定向我并将其作为一个骗子关闭.)

c++ gcc c-preprocessor

3
推荐指数
2
解决办法
611
查看次数

包括c ++文件中的c头

我试图在cpp文件中包含一个"c"头文件.c头文件的关键字为"Boolean".

c标题看起来像这样:

#ifndef _CONFIGSTORE_H_
#define _CONFIGSTORE_H_

#ifdef __cplusplus
extern "C"
{
#endif
Boolean ConfigStoreIsPassword(char *pName);

#ifdef __cplusplus
}
#endif

#endif //_CONFIGSTORE_H_
Run Code Online (Sandbox Code Playgroud)

下面是我在cpp文件中包含c头的方式:

extern "C"{
#include "configstore.h"
}
Run Code Online (Sandbox Code Playgroud)

要么

#ifdef __cplusplus
extern "C"
{
#endif

#include "configstore.h"

#ifdef __cplusplus
}
#endif
Run Code Online (Sandbox Code Playgroud)

无论哪种方式我包括,我得到以下错误:../../../../src/Common/framework/configstore.h:52:错误:'布尔'不命名类型

能不能让我知道如何在cpp文件中添加c标题提前谢谢!!

-Vasavi

c c++

1
推荐指数
1
解决办法
5647
查看次数

标签 统计

c++ ×3

c ×2

c-preprocessor ×1

gcc ×1