学习C语言深入解剖笔记之关键字的秘密
2024-10-20 13:35:16
C语言关键字的秘密
重点说明:
1、if(略)
2、void
①C语言规定只有相同类型的指针才可以相互赋值
②void*指针作为左值用于“接收”任意类型的指针
③void*指针作为右值赋值给其它指针时需要强制类型转换
④void*指针的使用(比如:memset函数的实现)
3、extern
extern "C"
{
int add(int a, int b)
{
return a + b;
}
}
//告诉编译器用C方式编译这个函数
4、const
①const修饰指针
const int* p; //p可变,p指向的内容不可变
int const* p; //p可变,p指向的内容不可变
int* const p; //p不可变,p指向的内容可变
const int* const p; //p和p指向的内容都不可变
口诀:左数右指
当const出现在*号左边时指针指向的数据为常量
当const出现在*后右边时指针本身为常量
②const修饰函数参数和返回值
const修饰函数参数表示在函数体内不希望改变参数的值
const修饰函数返回值表示返回值不可改变,多用于返回指针的情形
深入了解const的链接:https://blog.csdn.net/hjssss/article/details/86651393
5、struct与union
6、enum枚举类型与#define宏的区别
#define宏常量只是简单的进行值替换,枚举常量是真正意义上的常量
#define宏常量无法被调试,枚举常量可以
#define宏常量无类型信息,枚举常量是一种特定类型的常量
最新文章
- PHP 正则表达式匹配中文字符
- 那一夜,我们..奋笔疾书敲出的--->;>;库存管理系统
- css3属性 transition transform
- POJ 1488
- 一个日期Js文件。 2013年10月12日 星期六 癸巳年九月初八
- ASP.NET MVC3 实例(六) 增加、修改和删除操作(二)
- hdu 4911 Inversion (分治 归并排序 求逆序数)
- 【Android - 框架】之Retrofit的使用
- 转:.NET 环境中使用RabbitMQ
- COCO-Android开发框架公布
- Maven 复制jar到指定目录
- websevice(Web服务)基础
- 常见的cmd命令
- Tampermonkey脚本属性
- 关于CPU CACHE工作机制的学习
- range— 建立一个包含指定范围单元的数组 (數字、字母)
- AHB-Lite简介
- Excel 2003-单元格输入中带记忆功能
- Python之subprocess模块、sys模块
- OC基础之访问修饰符
热门文章
- LOJ P10130 点的距离 题解
- Oracle 分区默认segment大小变化(64k—>;8M)
- (尚019)Vue基于脚手架编写项目
- BZOJ 3553: [Shoi2014]三叉神经树 LCT
- java 数组逆序输出(方法内部的代码)
- WinDbg常用命令系列---!envvar
- puppeteer 试用
- [RN] React Native 使用 React-native-scrollable-tab-view 实现 类头条 新闻页头部 效果
- CFD-Post批量添加截面
- (五)Cisco dhcp snooping实例3-多交换机环境(DHCP服务器和DHCP客户端位于同VLAN)