好神奇的 extern "C" 哦。。。
有关 extern "C"
搞过C和C++混编的同志们都知道这个啥意思。
这儿有讲:http://www.cppblog.com/Macaulish/archive/2008/06/17/53689.html
但看一下下面的这个代码:
#include <iostream>
using namespace
std;
extern "C" { int g_inta; }
int main (void)
{
g_inta = 1;
cout << g_inta << endl;
return 0;
}
你觉得g_inta定义了不?嗯。。。它已经被定义了,要不编不过去。。。
如果把
extern "C" { int g_inta; }换做
extern "C" int g_inta;
extern { int
g_inta; }
extern int g_inta;
再试试呢?嗯。。。这只是对外部变量的声明,而非定义,是编不
过去的。
就为这个折腾了半晌,最后看看这个:
http://book.51cto.com/art/200904/121028.htm
最后感谢刘合同学的激情参与,哈哈。。。
相关文档:
1.gcc包含的c/c++编译器
gcc,cc与c++,g++
gcc和cc是一样的,c++和g++是一样的。一般c程序就用gcc编译,c++程序就用g++编译。
2.gcc的基本用法
gcc test.c:如果没有指定输出的文件,默认将编译出一个名为a.out的程序
gcc test.c -o test:-o参数用来指定生成目标程序的名字,这样将编译出一个名为test的程序。
3.为什 ......
1.输入一段字母加数字的句子,然后输出其中有几组数字,并且输出各组数字,并对其求平均值(取整即可)
#include<stdio.h>
#include<math.h>
int main()
{
int i,x=0,t=0,n=0,p=0;
char a[90]={0};
scanf("%s",a);
printf("Found:");
for(i=0;i<90;i++)
{
if(a[i]&g ......
线型
-----------------------------------------------------
名 称 取 值 含 义
-----------------------------------------------------
SOLID_LINE 0 & ......
50个c/c++源代码网站
文章出处:http://blog.chinaunix.net/u3/106835/showart_2190632.html
C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码
。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我, ......
#include <iostream>
using namespace std;
class Base {
public:
virtual void fn(int x) {
cout << "In Base class, int x = " << x << endl;
}
};
class SubClass : public Base {
public:
// 函数的重载,这样的重载方式,在Java中能行,在C/C++中却不行
virt ......