我写了一个库,我试图将它静态链接到我的主程序。我的主程序是用C ++编写的,但库是C语言。我注意到我的库中的一些调试printf语句运行了两次因为某些原因不应该出现,所以我开始注释掉代码。我现在离开了这里(不包括评论):
#include <iostream>
extern "C"
{
include "audio.h"
}
int main(int argc, char** argv)
{
std::cout << "Hello" << std::endl;
audio_test();
std::cout << "World" << std::endl;
return 0;
}
功能音频测试根本不感兴趣。这是我试图在我的C ++项目中使用的C文件。
void audio_test()
{
printf("TEST\n");
}
我的程序的输出是:
Hello
TEST
TEST
World
我现在不知道为什么会这样。
答案 0 :(得分:2)
致电std::ios_base::sync_with_stdio(true)
,它可能会更好。