哪个提升库与C兼容? [关闭]

问题描述 投票:0回答:1

[编辑]:这不是“寻求建议”线程。 Boost分为几个称为“库”的模块,并且有一个有限的已知数量。我询问其中一些“图书馆”的特定用法。


我知道Boost库是为C ++设计的,但是,我最近偶然发现了仅取决于C处理器的

BOOST.PREDEF,没有C ++特定代码,因此在C代码中效果很好。 BOOST.IO将此模块列为C++98

,但是我可以将其包含并与任何
C99
编译器一起使用[见下文]。
向其来源稍微挖掘,还表明已经完成了一些工作以支持C汇编(示例:

1

234),所以我很好奇其中有多少其中其中有多少“图书馆”将与C一起使用,就像boost.predef一样。 类似于boost.predef,我的意思是仅C-Prepropersor-或不需要任何C ++功能来编译,或者允许在不编译C ++源的C ++源的情况下使用该模块的一部分。

我的问题是:还有其他C可以使用C中的增强库吗?有什么方法可以检测哪些库与C?

兼容

非常相关:哪个提升图书馆仅是标题?

# proof that boost.predef compiles and works with C # get the source tree and create minimal compatible program $ git clone https://github.com/boostorg/predef.git $ echo '#include "boost/predef.h"' > main.c $ echo 'int main(void) {return 0;}' >> main.c # compile with very strict C99 $ cc -x c -std=c99 -Wpedantic -Werror -I./predef/include main.c $ cc --version cc (GCC) 14.2.1 2024091 # show every available macro $ cc -x c -std=c99 -Wpedantic -Werror -I./predef/include -dM -E main.c | grep BOOST

	
c++ c boost compatibility c99
1个回答
0
投票

尽管以C ++为目标,但很少有模块/库可以从C中起作用。这是可能的,因为这些模块/库仅取决于C预处理器,并且很少有条件构建路径使其与C-Con-Con-Compilers兼容。他们中的一些人使用

*.hpp

标头,但这并不能阻止C.

的使用。
清单如下:

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.