Linux C enum
/****************************************************************************
* Linux C enum
*
* 说明:
* 今天在查看Android源代码(development/tools/line_endings/line_endings.c)
* 的时候发现"enum { UNIX, DOS } ending;"语法从来没用过,挺惊讶的,于是自己写
* 个小demo测试一下具体情况,参考文章是Tony给出的。
*
* 2016-5-3 深圳 南山平山村 曾剑锋
* **************************************************************************/ 一、参考文档:
C枚举类型enum
http://blog.csdn.net/lqz1988/article/details/5747628 二、Demo:
#include <stdio.h> int main(int argc, char *argv) {
enum { UNIX, DOS } ending;
printf("%02x.\n", ending);
ending = DOS;
printf("%02x.\n", ending);
} 三、输出结果:
Press ENTER or type command to continue
.
. Press ENTER or type command to continue 四、推测:
enum { UNIX, DOS } ending;
相当于:
#define UNIX 0x00
#define DOS 0x01
unsigned int ending = UNIX; 五、应用场合:
enum { UNIX, DOS } ending;
语句中没有enum类型名,直接使用变量名,也就是说只能用一次,有点像匿名类的写法。
Linux C enum的更多相关文章
- linux下enum的使用
		enum T { status1, status2, } Linux下: 1.做函数返回值时enum T f():不能写成T f(): 2.if(i == status1)不能写成 if(i == T ... 
- Linux内存描述之内存区域zone--Linux内存管理(三)
		1 内存管理域zone 为了支持NUMA模型,也即CPU对不同内存单元的访问时间可能不同,此时系统的物理内存被划分为几个节点(node), 一个node对应一个内存簇bank,即每个内存簇被认为是一个 ... 
- Linux 驱动开发
		linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ... 
- Linux内存描述之内存区域zone–Linux内存管理(三)
		服务器体系与共享存储器架构 日期 内核版本 架构 作者 GitHub CSDN 2016-06-14 Linux-4.7 X86 & arm gatieme LinuxDeviceDriver ... 
- 嵌入式Linux驱动学习之路(二十六)DM9000C网卡驱动程序
		基于DM9000C的原厂代码修改dm9000c的驱动程序. 首先确认内存的基地址 iobase. 确定中断号码. 打开模块的初始化函数定义. 配置内存控制器的相应时序(结合DM9000C.C的手册). ... 
- Linux CGroup之freezer分析与应用
		Linux Kernel:4.4.17 CGroup的freezer子系统对于成批作业管理系统很有用,可以成批启动/停止任务,以达到及其资源的调度. freezer子系统也有助于针对运行一组任务设置检 ... 
- Android/Linux下CGroup框架分析及其使用
		1 cgroup介绍 CGroup是control group的简称,它为Linux kernel提供一种任务聚集和划分的机制,可以限制.记录.隔离进程组(process groups)所使用的资源( ... 
- Linux 2.6内核中新的锁机制--RCU
		转自:http://www.ibm.com/developerworks/cn/linux/l-rcu/ 一. 引言 众所周知,为了保护共享数据,需要一些同步机制,如自旋锁(spinlock),读写锁 ... 
- linux网络编程
		A: osi七层: 应用层 用 表示层 户 会话层 态 ************ ... 
随机推荐
- Linux 命令整理 —— 基本操作
			1.ls 目录列举(dir) 一般我们这么写: ls 列举当前目录的所有文件,如果文件很多的话,这么看很复杂.我们可以加关键字,例如我们要看包含xml的全部文件. ls *xml* 如果这个时候,我们 ... 
- 【转】并查集&MST题集
			转自:http://blog.csdn.net/shahdza/article/details/7779230 [HDU]1213 How Many Tables 基础并查集★1272 小希的迷宫 基 ... 
- 初识PCA数据降维
			PCA要做的事降噪和去冗余,其本质就是对角化协方差矩阵. 一.预备知识 1.1 协方差分析 对于一般的分布,直接代入E(X)之类的就可以计算出来了,但真给你一个具体数值的分布,要计算协方差矩阵,根据这 ... 
- Ajax出入江湖
			window.onload = initAll; var xhr = false; function initAll() { if (window.XMLHttpRequest) { xhr = ne ... 
- oracle  用户 多个表空间
			首先,授权给指定用户. 一个用户的默认表空间只能有一个,但是你可以试下用下面的语句为其授权在别的表空间中创建对像: alter user username quota 0||unlimited on ... 
- POJ 2771 Guardian of Decency(求最大点独立集)
			该题反过来想:将所有可能发生恋爱关系的男女配对,那么可以带出去的人数应该等于这个二分图的最大独立集 先要做一下预处理,把不符合要求的双方先求出来, company[i][j]表示i.j四个标准都不符合 ... 
- IIS常见错误及解决
			IIS常见错误 1.HTTP 错误 404.3 - Not Found由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加 MIME 映射. 解决办法: w ... 
- MyBatis开发Dao
			MyBatis开发Dao有两种方法: 1.原始Dao开发方法,就是程序需要编写Dao的接口和Dao的实现类. 2.MyBatis的mapper接口(相当于Dao接口)代理开发方法.(更重要) ---- ... 
- 实例学习写Makefile文件
			目录 0. 扫盲 1. 编译,链接 2. Makefile文件执行 3. Makefile书写规则 4. 案例 5. Makefile是如何工作的 6. 拔高,参考 0. 扫盲 Linux 环境下的程 ... 
- Servlet的应用
			1.重定向 HttpServletRequest接口提供的sendRedirect()方法用于生产302响应码和Location响应头,从而通知客户端去重新访问Location响应头中指定的U ... 
