据我所知,每当我们在c中使用c++中编译的代码时,我们必须指定一个链接约定,例如,
extern "C" {
void func1(void);
void func2(int, double);
}
使用extern "C"
表示(缺少参考链接):
它应该根据C链接约定进行链接。所有 标准C库中的函数以这种方式编写,如(stdio.h, cstdio,stdlib.h,...)
现在进入系统标头,例如 unistd.h
,fcntl.h
,如果您查看内容,它只是一个普通的C标头,周围没有任何extern "C"
现在,在c++代码中使用时,它正在编译而没有任何错误。
这是我的问题:
我是否应该像这样包含标题,以便每次都有效。
extern“C”{ #包括 }