extern C用法 - 笔试题
1.应用场景:.cpp文件中C++调用C代码
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。
由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。
比如说你用C 开发了一个so 库,为了能够让C ++语言也能够调用你的.so输出(Export)的函数,你需要用extern "C"来强制编译器不要修改你的函数名。
2.extern "C"实际用法
#ifdef __cplusplus //__cplusplus是cpp中自定义的一个宏
extern "C" { //告诉编译器,这部分代码按C语言的格式进行编译,而不是C++的
#endif/**** 一些C的定义或其他 *****/
#ifdef __cplusplus
};
#endif
或者在.cpp文件中这样写:
extern "C" {
};
/**** 一些C的定义或其他 *****/
extern C用法 - 笔试题相关推荐
- C语言笔试题--从CSDN转发
C语言笔试题--从CSDN转发 关键字: 工作,C语言 4.static有什么用途?(请至少说明两种) 1.限制变量的作用域 2.设置变量的存储域 7.引用与指针有什么区别? 1) 引用必须被初始化, ...
- 嵌入式Linux C笔试题积累(转)
http://blog.csdn.net/h_armony/article/details/6764811 1. 嵌入式系统中断服务子程序(ISR) 中断是嵌入式系统中重要的组成部分,这导致了很 ...
- 嵌入式Linux C笔试题积累
http://blog.csdn.NET/h_armony/article/details/6764811 1. 嵌入式系统中断服务子程序(ISR) 中断是嵌入式系统中重要的组成部分,这导致了很 ...
- 联发科技c语言面试题,联发科技笔试题
笔试题一 网址http://wenku.baidu.com/link?url=VPyN_si6yRdIzlTOA4l0zJJ6imuthhEGw17A2W3R33W9J0vvbz6tn38am9v ...
- C++笔试题汇总(6)
1.引言本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分 析面试题的内涵.文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见. 许多面试题看似简单,却需要深厚的基本 ...
- (更新时间)2021年5月18日 C#.NET笔试题 基础篇
C#.NET笔试题 基础篇 文章目录 C#.NET笔试题 基础篇 1.C#中堆和栈的区别? 2.C#中的委托是什么?事件是不是一种委托? 3.C#静态构造函数特点是什么? 4.CTS.CLS.CLR分 ...
- 简单c/c++笔试题 .
一.#include "filename.h"和#include 的区别 #include "filename.h"是指编译器将从当前工作目录上开始查找此文 ...
- 简单c/c++笔试题
一.#include "filename.h"和#include 的区别 #include "filename.h"是指编译器将从当前工作目录上开 ...
- 嵌入式常见经典笔试题
嵌入式常见经典笔试题 2012-1-6 15:09:49 收藏 | 打印 | 投票(0) | 评论(0) | 阅读(130) ◇字体:[大 中 小] 预处理器(Preproces ...
最新文章
- 网站压力测试工具webbench
- Mysql隐藏命令_mysql常用命令整理
- Mybatis获得参数值的两种方式:#{}和${}的区别
- pythonc语言结构_C语言结构体笔记
- usgs地震记录如何下载_用大叶草绘制USGS地震数据
- LeetCode 204. 计数质数(质数的倍数不是质数)
- DTS开发记录(序)
- 1.3编程基础之算术表达式与顺序执行 15 苹果和虫子
- 高清银行LOGO图片整合分享
- android 百度输入法表情,百度输入法安卓8.6版本发布,AI输入法成为最懂你的“斗图神器”...
- 初学CSS,美化一个属于你自己的网页
- 【win10网络重置后,网络适配器消失或者不能使用】
- 2023北京叶黄素展/北京视力矫正设备展/北京眼睛医学康复展
- 苹果开发者账号购买或续费支付表单填写全记录purchase form
- chrome总是提示\喔唷,崩溃啦\的解决办法
- 关于支付宝的支付流程
- 搭建DVWA出现错误:DVWA System error - config file not found.
- 【优化求解】基于蝗虫算法求解单目标问题matlab代码
- 内存管理 slub算法
- MDD 建模驱动设计