程序员面试宝典 笔记(第六章 预处理 const 和sizeof())
2024-08-26 15:32:33
void main()
{
char *arr="";
cout<<sizeof(arr)<<endl;//
cout<<sizeof(*arr)<<endl;//
char ss2[]="";
cout<<sizeof(ss2)<<endl;//
cout<<strlen(ss2)<<endl;//10注意sizeof 和 strlen区别 strlen 检测到\0后停止
cout<<sizeof(double)<<endl;//
cout<<sizeof(float)<<endl;//4
cout<<sizeof(long int )<<endl;//
cout<<sizeof(short int)<<endl;//
cout<<sizeof(unsigned long int)<<endl;//
cout<<sizeof(char)<<endl;//
cout<<sizeof(unsigned char)<<endl;// }
sizeof(空类)为1
sizeof(虚继承)为4,因为涉及虚表(虚指针)
内联函数:要做类型检查,这事内联函数比宏定义的优势。
内联函数一般用在如下情况:
(1)一个函数不断被重复调用
(2)函数只有简单几行,且函数中不包含
在C程序中 const 的用法主要是:
1、定义常量 2、修饰函数形参 3 、修饰函数返回值 当定义前两种时可以理解为read-only
const 和 #define相比有什么不同?
1、const 常量有数据类型,而宏常量没有数据类型,编译器可以对前者进行类型安全检查,而对后者只有字符替换,没有类型安全检查,并且在字符替换中可能会产生意料不到的错误。
2、有些集成化的调试工具可以对const 常量进行调试,但是不能对宏常量进行调试。
最新文章
- phpexcel导出数据表格
- idea缓存
- 从零开始山寨Caffe&#183;肆:线程系统
- 绑定repeater时三目运算加特殊结果处理
- css中的7中属性选择器
- CodeForces 577A Multiplication Table 质因子数
- ES6中的迭代器(Iterator)和生成器(Generator)
- RestTemplate的异常:Not enough variables available to expand
- oracle 启动三步骤
- 乘积型Sobolev不等式
- JAVA第九次作业
- CentOS 7从Python 2.7升级至Python3.6.1
- JQuery UI之Autocomplete(3)属性与事件
- 安装vmware-tools出错:Execution aborted!!!
- ARM设备树
- [Golang学习笔记] 03 库源码文件
- ListView.setDivider,自定义的Devider
- xcode配置文件中,Architectures表示的意义
- 《深入理解Spark-核心思想与源码分析》(四)第四章存储体系
- rman命令详解(三)
热门文章
- python 正则表达式 (重点) re模块
- 1087 All Roads Lead to Rome (30 分)(最短路径)
- LeetCode 61——旋转链表
- LeetCode 2——两数相加
- 扩展欧几里得 求ax+by == n的非负整数解个数
- HDU 4569 Special equations(枚举+数论)(2013 ACM-ICPC长沙赛区全国邀请赛)
- sql between and 边界问题
- linux服务器su之后变成bash-4.1#
- hw_breakpoint使用方法
- java基础知识(一)- 数据类型