C++语言嵌入 C代码, extern "C" 怎么使用,请举例说下,谢谢;
展开全部
简单的例子
#include <iostream>
extern "C"
{
int gcd(int m, int n)
{
int r;
while (r = m%n) m = n, n = r;
return n;
}
}
int main(int argc, char *argv[])
{
int a, b;
std::cin >> a >> b;
std::cout << gcd(a, b) << std::endl;
return 0;
}
事实上extern "C"更多地用于声明C语言的函数(去看看很多头文件的写法就知道了)
展开全部
#include "stdafx.h"
#include <iostream>
extern "C"
{
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/pixdesc.h"
#include "libavutil/imgutils.h"
#include "libavutil/dict.h"
#include "libavutil/parseutils.h"
#include "libavutil/samplefmt.h"
#include "libavutil/avassert.h"
#include "libavutil/time.h"
#include "libavformat/avformat.h"
#include "libavdevice/avdevice.h"
#include "libswscale/swscale.h"
#include "libavutil/opt.h"
#include "libavcodec/avfft.h"
#include "libswresample/swresample.h"
}
#include <iostream>
extern "C"
{
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/pixdesc.h"
#include "libavutil/imgutils.h"
#include "libavutil/dict.h"
#include "libavutil/parseutils.h"
#include "libavutil/samplefmt.h"
#include "libavutil/avassert.h"
#include "libavutil/time.h"
#include "libavformat/avformat.h"
#include "libavdevice/avdevice.h"
#include "libswscale/swscale.h"
#include "libavutil/opt.h"
#include "libavcodec/avfft.h"
#include "libswresample/swresample.h"
}
追问
编译不通过,使用C4droid(android c/c++ IDE) G++b编译器
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有嵌入c的吗.我知道要嵌入汇编
追问
汇编还没学, 就是c++代码中的加入C代码,属于c/c++混合编程。
extern "C"{
……
}
这种模式的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |