2017/9/3
来源:互联网 发布:软件过了试用期 编辑:程序博客网 时间:2024/06/05 17:30
枚举类型学习:
当我们编程的时候,一种变量的可能取值是有限的,有时候我们需要对它可能取得每一个数值赋予一个名称。这个时候如果我们用#define宏定义来实现 就会造成宏定义过多,代码松散,不宜阅读。
那么这就需要我们学习下枚举类型
枚举是一种数据类型:
格式: enum typename{ValueName1 ValueName2 ValueName3};
例如 enum week{ Mon=1,Tue=2,Wen=3,Thu=4,Fri=5,Sat=6,Sun=7};
加入我们列举的数据有递增性质的话,我们可以这样:
enum week{ Mon=1,Tue,Wen,Thu,Fri,Sat,Sun};
枚举是一种数据类型 ,因此我们可以定义变量,同时可以一边给出数据定义,一边给出变量的定义:
enum week{ Mon=1,Tue,Wen,Thu,Fri,Sat,Sun},a,b,c; 变量被定义以后,我们可以对这些变量进行赋值,注意赋值的格式:
enum week a=Mon,b=Tue; 注意对于变量a赋值,只能是Mon ,Tue这几个固定的数值,不能是其他值了,否则编译器会提示初始化错误
上面的Mon Tue 的作用域都是全局的,别且是常量,因此我们不能够再次对他们赋值,只能够将他们的值赋值给其他变量,正是由于他是个常量,所以可以和宏一样跟在case 语句后面,但是它和宏不同的是,宏是在编译前进行的预处理,而他是一个编译的时候直接储存在代码区,这里应该注意的是,因为Mon,Tue,是常量数据,因此不能将他们储存在数据区,因此我们无法利用&符号来提取他们的地址。&只能提取变量的地址。
位操作的学习笔记:
9的2进制:
0000 0000 0000 1001
它的反码:
1111 1111 1111 0110
它的补码:
1111 1111 1111 0111
注意在C语言中规定,用补码表示原数的负数值
左移 右移就是往左或者移动几位,具体的操作如下:
移动的方法如下:如果高位是1 那么移动后就自动补1,如果高位时0 那么移动后就自动补0。
- 2017-9-3
- 随笔-2017-9-3
- 2017/9/3
- 2017/9/3
- 2017/9/3
- 2017/9/3 训练总结
- 周末记录--2017、9、3
- 我的科研生活2017-3-9
- 2017年9月3日周记
- 2017年9月1日-2017年9月3日训练总结
- 2017年3月9日Java上机实验项目
- 科锐课堂笔记:2017/3/9 静态变量
- 字符串:各种奇葩内置--2017/9/3--2
- 2017年9月3日训练日记
- 2017-7-9 思考
- MATLAB*2017/1/9
- android*2017/1/9
- [2017] 2-9
- 引导页和viewpager
- JaCoCo在Eclipse、Maven中的使用
- 深度学习之什么是神经网络
- MySQL InnoDB引擎的索引和存储结构
- floyd算法求最短路
- 2017/9/3
- 使用MFC为何要调用CAcModuleResourceOverride
- 《UNIX网络编程 卷2》 笔记: 管道
- NAT内网穿透
- ajax详解
- 周末训练笔记+I Hate It(9.3)
- Nginx安装与使用
- 使用Service描述的服务与springAop冲突导致服务无法暴露
- Linux题(1)