《C语言深度剖析》学习笔记二
枚举与#define宏的区别
1.#define宏常量是在预编译阶段进行简单替换。枚举常量则是在编译的时候确定其值。
2.一般在编译器里,可以调试枚举常量,而不能调试宏常量。
3.枚举可以一次定义大量相关的常量,而#define宏一次只能定义一个
Typedef
功能:取别名,制造马甲。
Typedef得到的也是类型名,在与const连用时,判断修饰对象时忽略
Typedef {
…………
}stu, *stu_ptr;
const stu_ptr stu3;
stu_pst const stu4;
判断时忽略类型名stu_ptr , 第一个修饰stu3指针,第二个修饰stu4指针
Typedef与#define的区别
#define 只是进行简单的替换,不做语法检查,在预编译时进行。
#define a int[10] typedef int a[10]
1 错
2 A B错误
3 错
4 CDEFGH正确
5 CD正确
6 CDEFGH正确
7 CD正确
8 CDEFGH正确
数组指针域指针数组,看结合,取决于第一个结合的类型;
函数指针:指向函数的指针
编译器将注释替换成空格,而不是简单的剔除
多重嵌套时,应当在一些段落的结尾处加注释;
注释应注重“为什么(why)”, 而不是“怎么做(how)”;
位移运算符的优先级低于算数运算符
左移和右移的位数不能超过数据的长度,不能小于0;
贪心法:从左到右一个一个字符的读入,如果该字符可能组成一个符号,那么再读入下一个字符,判断已经读入的2个字符组成的字符串是否有可能是一个符号的组成部分;如果可能,继续读入下一个字符,重复上述判断知道读入的字符组成的字符串已不再可能组成一个有意义的符号。
转载于:https://blog.51cto.com/aotman/992570
《C语言深度剖析》学习笔记二相关推荐
- c语言深度剖析百度云,《C语言深度剖析》笔记
<C语言深度剖析>笔记 1.在c语言中,凡不加返回值类型限定的函数,就会被编译器作为返 回整形处理. 2.register 变量必须是一个单个的值,并且其长度应小于或等于整型 的长度.而且 ...
- 深度强化学习笔记(二)——Q-learning学习与二维寻路demo实现
深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 文章目录 深度强化学习笔记(二)--Q-learning学习与二维寻路demo实现 前言 理论 什么是Q-Learning 算 ...
- C语言学习笔记(五):《C语言深度剖析》笔记
register变量必须是能被cpu寄存器所接受的类型.此变量必须是一个单个的值,并且其长度应小于或等于整形的长度,而且此变量可能不存放在内存中,所以不能用取址运算符"&" ...
- [学习笔记]C语言深度剖析
近期正在看<C语言深度剖析>,里面有一个讲解自加运算符(++),有一程序如下: void main() {int i;for(i=0, printf("First i = %d\ ...
- C语言深度剖析笔记1
关键字的秘密 数据类型 什么是数据类型? 数据类型可以理解为固定内存大小的别名; 数据类型是创建变量的模子(花形的,圆形的,星形的等等); char 1byte short 2byte int 4by ...
- C语言深度剖析笔记2
接上半部分 C语言深度剖析笔记1 https://blog.csdn.net/halazi100/article/details/125844487 C语言深度剖析笔记1 指针 变量回顾 既然程序中的 ...
- 嵌入式系统设计师学习笔记二十八:嵌入式程序设计③——高级程序设计语言
嵌入式系统设计师学习笔记二十八:嵌入式程序设计③--高级程序设计语言 解释程序和编译程序 编译器的工作阶段示意图 语法错误:非法字符,关键字或标识符拼写错误 语法错误:语法结构出错,if--endif ...
- GEE(Google Earth Engine) 最基础代码学习笔记二 —— JavaScript 语言
GEE(Google Earth Engine) 学习笔记二 Javascript 语言 1. 注释 print('Hello World!'); 如果要注释,则在代码前面加//,比如: // pri ...
- 语言 提取列名_学习健明老师发布的R语言练习题的学习笔记(二)
学习者:骆栢维 题目来源:生信基石之R语言 中级10 个题目:http://www.bio-info-trainee.com/3750.html 备注:本文为笔者学习健明老师GitHub答案代码的学习 ...
- Apollo源码剖析学习笔记2
Apollo 源码剖析学习笔记2 Talker-ListenerNode 目录中包含了 Node 对象.Reader 对象和 Writer 对象.Node 对象主要对应 Ros 中的 Node 节点, ...
最新文章
- 垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
- 【Boost】boost库中thread多线程详解12——线程的分离与非分离
- github 开放_GitHub为女性开发人员所做的工作,Tim O'Reilly谈开放数据等
- TokenInsight:BTC新增流量稳定,但泡沫指数已超17年峰值
- OCaml已经做好iOS开发准备
- gstreamer插件用不了,及黑名单Blacklist的解决办法
- 190402每日一句
- 2021全国大学生数学建模 C题 解题思路和细节展示
- 将PC端固定布局页面改成移动端流体布局。
- 北京林业大学本科毕业论文答辩和论文选题PPT模板
- 蓬莱小课:零基础应届生如何转行学数据分析师?
- Processing 案例 | 诡异的八爪鱼
- 华中科技大学计算机科学与技术排名,2017华中科技大学专业排名
- python的与 或 异或 运算
- 奔赴山海之前,毕业季一定要做的那些事情
- java微信支付代码_10行代码搞定微信支付(Java版)
- python如何安装pip3_Python3中安装pip3
- 立春时节到,VR购物大杀器来袭
- 2022-2028全球重要器官支持系统和医学仿生学行业调研及趋势分析报告
- Rdlc报表纵向与横向打印问题