补充:C语言枚举类型

1.枚举类型

1.枚举数据类型是C语言中一种构造数据类型,可以让数据更加简洁,更易读,对于只有几个特定的数据,可以使用枚举类型
2.枚举对应英文enumeration,简写为enum
3.枚举是一组常量的集合,包含一组有限的特定的数据
4.枚举语法的定义格式为

enum 枚举名 {枚举元素}

1.1 实例1

使用枚举表示一个星期

// 传统方法
#define MON 1;
#define TUE 2;
#define WeD 3;
#define THU 4;
#define FRI 5;
#define SAT 6;
#define SUN 7;
#include <stdio.h>
void main() {

	enum DAY
	{
                // 这里DAY 就是枚举类型, 包含了7个枚举元素 
                // 没有赋值,就按照顺序给值 0 1 2 3 4 ...
                // 枚举类型默认是从0开始的  
                // 给初始值之后会从初始值递增
		MON=1, TUE=2, WED=3, THU=4, FRI=5, SAT=6, SUN=7
	}; 
	enum DAY day; // enum DAY  是枚举类型, day 就是枚举变量 
	day = WED; //给枚举变量  day 赋值,值就是某个枚举元素
	printf("%d",day);// 3 , 每个枚举元素对应一个值
	getchar();
}

1.2 枚举类型声明

如同结构体(struct)和共用体(union)一样,枚举变量也可用不同的方式说明,即先定义后说明,同时定义说明或直接说明。设有变量a,b,c被说明为上述的weekday,可采用下述任一种方式:

enum weekday{sun,mon,tue,wed,thu,fri,sat};	//定义枚举类型
enum weekday a,b,c;                             //定义3个枚举类型的变量
enum weekday{sun,mon,tue,wed,thu,fri,sat}a,b,c;	//定义枚举类型的同时,定义3个变量
enum{sun,mon,tue,wed,thu,fri,sat}a,b,c;		//枚举名可省略,但后面不能再定义新的枚举变量

1.3 枚举类型取别名

// typeof可以把枚举类型定义一个别名
typedef enum weekday		//此处的weekday为枚举名
{
	Mon = 0,
	Tues,
	Wed,
	Thurs,
	Fri,
	Sat,
	Sun
} weekday;				//此处的weekday为enum weekday的别名

weekday today, tomorrow;		//枚举类型的变量,即enum weekday类型
// 枚举名可以省略
typedef enum 	//省略枚举名
{
	Mon = 0,
	Tues,
	Wed,
	Thurs,
	Fri,
	Sat,
	Sun
}weekday;				//此处的weekday为枚举类型的别名

weekday today, tomorrow;		//枚举类型的变量,即enum weekday类型

// typeof使用的时候不可以省略别名
typedef enum 	//省略枚举名
{
	Mon = 0,
	Tues,
	Wed,
	Thurs,
	Fri,
	Sat,
	Sun
}weekday;				//此处的weekday为枚举类型的别名

weekday today, tomorrow;		//枚举类型的变量,即enum weekday类型

  • 不能定义同名的枚举类型
  • 不能包含同名的枚举成员

1.3 枚举类型的遍历

C 语言中,枚举类型是被当做 int 或者 unsigned int 类型来处理的, 枚 举类型必须连续是可以实现有条件的遍历。以下实例使用 for 来遍历枚举的元素。

#include <stdio.h>

enum DAY {
      MON=1, TUE, WED, THU, FRI, SAT, SUN //如果没有给赋值,就会按照顺序赋值
} day; // 表示 定义了一个枚举类型 enum Day ,同时定义了一个变量 day(类型是 enum DAY)


int main() {
	
	// 遍历枚举元素, 枚举的每个元素都对应数值
	//day++ 会给出警告,但是可以运行
	for (day = MON; day <= SUN; day++) { //SUN = 7
		printf("枚举元素:%d \n", day); // 1, 2, 3, 4,5,6,7
	}
	//day = FRI;
	//printf("%d", day); // 10
	getchar();
	return 0;

}

1.4 枚举类型在switch中的应用

#include <stdio.h>

void  main() { 
    enum SEASONS {SPRING=1, SUMMER, AUTUMN, WINTER}; //定义枚举类型  enum SEASONS   
    enum SEASONS season;//定义了一个枚举类型变量 season(类型 enum SEASONS )
    printf("请输入你喜欢的季节: (1. spring, 2. summer, 3. autumn 4 winter): ");
    scanf("%d", &season);
    switch (season) {
    case SPRING:
        printf("你喜欢的季节是春天");
        break;
    case SUMMER:
        printf("你喜欢的季节是夏天");
        break;
    case AUTUMN:
        printf("你喜欢的季节是秋天");
        break;
    case WINTER:
        printf("你喜欢的季节是冬天");
        break;
    default:
        printf("你没有选择你喜欢的季节");
    }
    getchar();
    getchar();
  
}

本文转载于网络 如有侵权请联系删除

相关文章

  • zabbix文件以及命令详解(二)

    一、zabbix配置文件详解1.1zabbix_server.conf配置文件详解#cat/etc/zabbix/zabbix_server.conf Bash############一般参数############ #ListenPort=10051#trapper的监听端口,端口范围1024-32767,默认是10051 #SourceIP=#出站连接的源IP地址。默认为空 #LogType=file#指定日志消息写入的位置:system是写到syslog里面,file是写到本地指定的位置,console是标准输出到屏幕,这里默认是file LogFile=/var/zabbix/zabbix_server.log#这里一般要修改到我们指定位置的 #LogFileSize=1#日志文件的最大大小(MB)就轮询日志。0-禁用自动日志旋转。范围是0-1024,默认是1M大小就轮询。 #DebugLevel=3#日志调试级别,0-有关Zabbix进程启动和停止的基本信息,1-关键信息,2是错误信息,3是warnings级别,4是debug信息,5是扩展调试信息 #PidFile=/tmp

  • 解密, 我收藏夹里的常用网站

    搜索网站Bing在不支持谷歌搜索的前提下,使用Bing是个不错的方案。Bing国际版:https://cn.bing.com/image-20210415161144570StackOverflowhttps://stackoverflow.com/全球最大的it问答网站,如果使用Google搜索,很多解决方案都来自这个网站,汇集了全球各地的程序员,有问必答,优秀的程序员都是面向StackOverflow编程(号称)。电子书搜索这是一个超级强大的电子书导航网站,内部聚合了多达20多个优质的电子书网站。https://ebook.blinkol.comimage-20210415161123989学习网站菜鸟教程https://www.runoob.com/解决问题可以直接搜索,但是如果要全面了解一个知识,就需要一个系统性的知识架构,这里覆盖各种编程及IT教程,每个教程都提供了大量的在线实例,非常适合新手学习。image-20210415155404491W3School从基础的HTML到XHTML,乃至进阶的XML、SQL、数据库、多媒体和WAP,所有资源都是免费的!前端的必备学习网站

  • c语言入门教程–-11递归

    c语言入门教程–-11递归递归的意思就是函数自己调用自己。 但在使用递归时,程序员需要注意定义一个从函数退出的条件,否则会进入死循环。例子: 5!这里是求5的阶乘,也就是5x4x3x2x1#include<stdio.h> intF(inta)//求阶乘 { if(a==1)return1;//这里就是出口 elsereturna*F(a-1);//如果不是1的话,就返回a*a-1的阶乘 } intmain() { intb=F(5); printf("%d\n",b); return0; }复制运行结果: 这就是递归。巧妙运用递归可以做成很多事情。思考题目: 11235813? 用递归求一下?的数字。解:if(a==1||a==2)return1;//这里就是出口 elsereturnF(a-2)+F(a-1);//从第3个开始就等于前两个数相加复制//自己可以试着把完整的程序编写出来,并且慢慢吸收,消化。发布者:全栈程序员栈长,转转请注明出处:https://javaforall.cn/2911.html原文链接:

  • 带你彻底掌握 Lambda 表达式(上)

    说明: 由于Lambda表达式涉及的周边知识点实在太多,因此拆分为上、下两篇文章讲解,本篇为上篇,下篇随后放出,大家可在我公众号中查找。整体目录介绍:上篇,主要讲1~4章节,下篇,主要介绍5~8章节。序言JDK8日渐成为项目开发中的主流。但平时在和很多小伙伴的交流和面试中,发现很多人仍停留在JDK7及以前的认知层面,Lambda表达式、方法引用、Stream流、default关键字,很少使用,甚至还有不少小伙伴不知道怎么用!!不客气的说,不掌握JDK8的新特性,面试通过基本很难很难。换位思考,若不掌握,你面试不慌吗?而Lambda表达式,更是JDK8新特性中的重中之重,它能够简化我们的传统操作模式。本文会帮你详细梳理Lambda表达式的前世今生,有原理讲解,有示例实战,助力你面试起飞。文章略长,但一定是干货满满的,对于技术文章而言,短小精悍的特点并不是好事,因此我写的文章都偏长,注重干货,注重前因后果,做到知其然更要知其所以然。如果你有耐心读下去,一定会有较大收货。如果没时间看,可收藏留以备用~在具体描述Lambda表达式之前,我们需要补充一些基础知识:什么是函数式接口。1.函数式接口

  • kubernetes从懵圈到熟练 – 集群网络详解

    阿里云K8S集群网络目前有两种方案,一种是flannel方案,另外一种是基于calico和弹性网卡eni的terway方案。Terway和flannel类似,不同的地方在于,terway支持Pod弹性网卡,以及NetworkPolicy功能。今天这篇文章,我们以flannel为例,深入分析阿里云K8S集群网络的实现方法。我会从两个角度去分析,一个是网络的搭建过程,另外一个是基于网络的通信。我们的讨论基于当前的1.12.6版本。鸟瞰总体上来说,阿里云K8S集群网络配置完成之后,如下图,包括集群CIDR,VPC路由表,节点网络,节点的podCIDR,节点上的虚拟网桥cni0,连接Pod和网桥的veth等部分。类似的图,大家可能在很多文章中都看过,但是因为其中相关配置过于复杂,比较难理解。这里我们可以把这些配置,分三种情况来理解:集群配置,节点配置以及Pod配置。与这三种情况对应的,其实是对集群网络IP段的三次划分:首先是集群CIDR,接着为每个节点分配podCIDR(即集群CIDR的子网段),最后在podCIDR里为每个Pod分配自己的IP。集群网络搭建初始阶段集群的创建,基于云资源VPC

  • 腾讯云认证重磅发布,光环国际成为首家合作伙伴

    摘要2018年6月10日,“腾讯云与光环国际深度合作发布会暨FMI大数据及云开发者大会”在北京中关村软件园会议中心大报告厅举行。本次发布会腾讯云正式签约光环国际,光环国际成为腾讯云首家……2018年6月10日,“腾讯云与光环国际深度合作发布会暨FMI大数据及云开发者大会”在北京中关村软件园会议中心大报告厅举行。本次发布会腾讯云正式签约光环国际,光环国际成为腾讯云首家合作伙伴,双方共同推出“尖峰极客”人才计划。未来,双方将在大数据开发、云开发、云运维、云安全等前沿技术方向集取行业最强实力紧密开展系统性合作。腾讯云产品总监周军、腾讯云教育认证中心总监李观平、腾讯T4大数据专家堵俊平以及光环国际重要高管出席了本次新闻发布会。(腾讯云与光环国际深度合作发布会)一、腾声飞实,讯起光环党的十九大提出“推动互联网、大数据、人工智能和实体经济深度融合”,这对我国实施国家大数据战略提出了更高的要求。腾讯云产品总监、腾讯产品专家周军先生在谈及腾讯云的发展以及行业合作伙伴的选择时谈到:“腾讯云正在全球的云计算产业中扮演者越来越重要的作用,腾讯云具备了成为全球云服务商必备的三大核心能力:在全球关键地区运营本地

  • 014.golang 并发concurrency

    并发concurrency很多人都是冲着Go大肆宣扬的高并发而忍不住跃跃欲试,但其实从 源码的解析来看,goroutine只是由官方实现的超级“线程池”而已。 不过话说回来,每个实例4-5KB的栈内存占用和由于实现机制而大幅 减少的创建和销毁开销,是制造Go号称的高并发的根本原因。另外, goroutine的简单易用,也在语言层面上给予了开发者巨大的便利。并发不是并行:ConcurrencyIsNotParallelism 并发主要由切换时间片来实现“同时”运行,在并行则是直接利用 多核实现多线程的运行,但Go可以设置使用核数,以发挥多核计算机 的能力。Goroutine奉行通过通信来共享内存,而不是共享内存来通信。ChannelChannel是goroutine沟通的桥梁,大都是阻塞同步的通过make创建,close关闭Channel是引用类型可以使用forrange来迭代不断操作channel可以设置单向或双向通道可以设置缓存大小,在未被填满前不会发生阻塞Select可处理一个或多个channel的发送与接收同时有多个可用的channel时按随机顺序处理可用空的select来阻塞m

  • Zookeeper 通知更新可靠吗? 解读源码找答案!

    导读:遇到Keepper通知更新无法收到的问题,思考节点变更通知的可靠性,通过阅读源码解析了解到zkWatch的注册以及触发的机制,本地调试运行模拟zk更新的不可靠的场景以及得出相应的解决方案。过程很曲折,但问题的根本原因也水落石出了,本文最后陈述了更新无法收到的根本原因,希望对其他人有所帮助。-----------------------------------------通常Zookeeper是作为配置存储、分布式锁等功能被使用,配置读取如果每一次都是去Zookeeperserver读取效率是非常低的,幸好Zookeeper提供节点更新的通知机制,只需要对节点设置Watch监听,节点的任何更新都会以通知的方式发送到Client端。如上图所示:应用Client通常会连接上某个ZkServer,forPath不仅仅会读取Zk节点zkNode的数据(通常存储读取到的数据会存储在应用内存中,例如图中Value),而且会设置一个Watch,当zkNode节点有任何更新时,ZkServer会发送notify,Client运行Watch来才走出相应的事件相应。这里假设操作为更新Client本地的

  • 以太坊·食品溯源案例

    本文节选自电子书《NetkillerBlockchain手札》NetkillerBlockchain手札本文作者最近在找工作,有意向致电13113668890Mr.NeoChan,陈景峯(BG7NYT)中国广东省深圳市龙华新区民治街道溪山美地518131+8613113668890<netkiller@msn.com>文档始创于2018-02-10版权©2018Netkiller(NeoChan).Allrightsreserved.版权声明转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。http://www.netkiller.cnhttp://netkiller.github.iohttp://netkiller.sourceforge.net微信订阅号netkiller-ebook(微信扫描二维码)QQ:13721218请注明“读者”QQ群:128659835请注明“读者”内容摘要这一部关于区块链开发及运维的电子书。为什么会写区块链电子书?因为2018年是区块链年。这本电子书是否会出版(纸质图书)?不会,因为互联网技术更迭太快,纸质书籍的内容无法实时

  • 这波操作666 360上亿域名拟借壳上市A股

    360从纽交所退市后拟借壳A股江南嘉捷上市!再次回归A股。报告显示,上市公司江南嘉捷全部资产作价18.72亿元,通过资产置换和现金转让方式置出;360公司的100%股权作为本次拟置入资产作价504.16亿元,与拟置出资产中的置换部分以等值置换方式抵消后,置换资产与置入资产差额部分由上市公司以发行股份方式向360公司全体股东处购买。交易完成后,360公司实现重组上市。今日凌晨,周鸿祎还通过个人微信发表朋友圈动态,对团队表达了感谢,“谢谢大家几年来的坚持坚强坚韧”。360公司成立于2005年,早先靠查杀流氓软件3721起家,随后以免费杀毒软件为公司主营产品。旗下包括360安全卫士、360杀毒、360手机助手、360手机卫士、360安全浏览器等产品。据悉,从用户数量来看,360已经成为国内zui大的免费杀毒公司。实际上,360更为业内津津乐道的便是两年前花费1亿元收购天价域名360.com,为此每每传出企业重金收购域名,360.com必定作为经典案例位列其中。拥有过亿价值的域名,360想要低调也难。就在今年9月底,360又再度传出高价收购360.net域名,并且这个域名已启用指向360企业安

  • 安装mmpeg

    DownloadFFmpeg官网下载地址  在Builds-CODEXFFMPEG@gyan.dev下载(我下载的是full所有文件)解压后找到bin文件夹路径在我的电脑(win10)右键属性——》高级系统设置中——》环境变量——》 我的路径是D:\ffmpeg\ffmpeg-2022-09-19-git-4ba68639ca-full_build\ffmpeg-2022-09-19-git-4ba68639ca-full_build\bin 在cmd中输入ffmpeg-version复制 出现这个就是安装成功了~

  • 边工作边刷题:70天一遍leetcode: day 92

    ShortestDistancefromAllBuildings 要点: 这种没有weight的distance题,首先想到dfs/bfs。这题因为是最短距离,所以用bfs。注意不同于SurroundedRegions,这题不是连通渲染,而是对每个’1’值点作为起点单独的bfs,而不是并行的起始点同时进queue初始化 如何记录结果?bfs过程中,level是累加到某个点上的。但是并不知道是不是所有building都能到达,所以用reach来记录每个0点到达的1点(buildings)个数,最后统计的时候不考虑不能reach所有building的 一个强力优化:bfs同时记录某个buildings连通的其他building个数,结束时如果不为所有building数,可以直接返回-1 细节: bfs,visited在开始的时候allocate 数据结构:self.reach,self.dist,visited,count returnTrue/False直接依赖一个条件的时候直接返回条件,而不要if/else检查 错误点: 注意bfs的起始点是每个building,统计reac

  • GDB调试命令总结

    GDB的功能 1.启动被调试程序 2.让被调试的程序在指定位置停住 3.当程序停住的时候,可以检查程序状态,变量值   用法:  gcc-gtest.c-otest  gdb   命令: 查看源代码    list/l空or行号or函数名     直接enter,重复执行上一命令 run/r 运行至下一个断点停下来or如果没有断点,直接运行结束 start  运行进入主函数(main())停下来 .断点     1)    设置断点            break/b----行号or函数名[ifcondition命中条件]     2)    infobreak/b查看断点信息     3)   &n

  • 网络模型各层设备

    复制 复制 物理层中继器、集线器数据链路层交换机、网桥网络层路由器 一、物理层1.中继器 中继器是最简单的网络互联设备,连接同一个网络的两个或多个网段。完成物理信号的复制、调整和放大功能,以此从而增加信号传输的距离。中继器只将任何电缆段上的数据发送到另一段电缆上,并不管数据中是否有错误数据或不适于网段的数据。2.集线器 集线器也称HUB,属于共享型设备,接收数据广播发出,在局域网内一般都是星型连接拓扑结构,每台工作站都连接到集线器上。由于集线器的带宽共享特性导致网络利用效率极低,一般在大中型的网络中不会使用到集线器。现在的集线器基本都是全双工模式。 二、数据链路层1.交换机 交换机根据MAC地址进行数据转发。交换机的每一个端口都属于一个冲突域,而集线器所有端口属于一个冲突域。交换机通过分析Ethernet包的包头信息(其中包含了源MAC地址、目标MAC地址、信息长度等),取得目标MAC地址后,查找交换机中存储的地址对照表(MAC地址对应的端口,确认具有此MAC地址的网卡连接在哪个端口上,然后将信包送到对应端口,有效的抑制IP广播风暴。并且信息包处于并行状态,效率较高。 交

  • 《剑指offer》--- 数组中只出现一次的数字

    本文算法使用python3实现 1.问题   一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。   时间限制:1s;空间限制:32768K 2思路描述   方法一:从头到尾遍历数组,如果使用count()进行判断,若出现次数为1,添加到结果中。   方法二:创建一个set()集合,从头到尾遍历数组,若数组中的数字已存在于set()集合中,则从set()中删除该数字,否则添加到set()中。最终set()中剩余的即为所求结果。   方法三:利用异或运算进行。当两个数字相同时,异或的结果为0。若一个数组,除了一个数字只出现一次,其它数字都出现过两次,那么这个数组从头至尾做异或运算,最后的结果即为这个只出现了一次的数字。于是我们就可以思考,如果把数组分成两部分,每个部分仅包含一个只出现一次的数字,那么分别对这两个部分进行异或,异或出来的结果就是所求两个数字。     如何将数组分成两部分呢?先将整个数组进行异或,异或的结果为两个只出现一次数字的异或结果。将其二进制的从右至左的第一个“1”作为划分条件,当数组数字的二进制在该为为“1”时划分到数组

  • 【转载】裸眼识别二维码

      一个开关的开合状态可以对应“0、1”两个信号,莱布尼茨三百多年前留下的这个制式影响深远。日常语言依赖于思维逻辑,与之类似,数字语言的流通则依赖于数学逻辑,但本质上仍然只是无数个与非门的逻辑计算。因此相比于计算机,我们的计算能力虽然在效率方面有点难以启齿,但这并不代表有些事情我们注定办不到。 比如靠肉眼识别二维码?虽然人类大脑的计算效率早已落后家用计算机好几个量级,但这并不妨碍我们光靠人脑去完成一件“看似只有电子设备才能完成的事情”的尝试。     我们在生活中消费、转账时用手机扫的二维码,属于QRcode(QuickResponse)。但除了QRcode之外,二维码还有其他多种制式标准,比如DataMatrix、PDF417、Ultra-code——本文只讨论QR码这个生活场景中最常见的二维码制,因为……其他的我也不会。 条码技术最早需要追溯到上世纪20年代,当时美国威斯汀豪斯(Westinghouse)实验室的发明家约翰·科芒德(JohnKermode)为了实现对邮政单据的自动分检,发明了一种用条码对单据做标记的机制(一个条表示数字“1”,二个条表示数字“2”,称为模块

  • 我与Git的那些破事(下)--分支模型

    在上篇文章中,我提到了Git的基本概念和一些本人实际项目中的总结。然而,最近读了VincentDriessen写的一篇文章,觉得他总结的太好了,站在他肩膀上忍不住将自己的理解分享出来。VincentDriessen的文章连接放在本文最下方,有需要的童鞋可去参考一二。 话不多上,干货顶上。 分支模型 上述这张图便是一张完整的分支模型。乍看上去,似乎有点复杂,其实理解后非常简单,并且十分经典。如果你所在项目代码管理较为混乱,我相信,该模型会对你有所帮助。 主要分支 对于完整的项目来讲,有两个主要分支,它们的生命周期与项目等同,即一直会存在: master分支 develop分支 master:我相信,每个git用户都非常熟悉该分支,没错,这是创建项目时的默认分支。对于该模型,我们认为master分支上任何一个点,都是一个稳定的版本,可以直接部署至产线环境。 develop:这是master的平行分支,也是项目中持续开发的分支。该分支的HEAD始终反应着下一个版本的最新修改。所有的feature分支代码都往这里合入。通常,自动化测试环境都由该分支构建。 当develop分支合入了所有

  • 【uniapp 开发】文字缩略css

    文字超出两行后显示省略号 display:-webkit-box; overflow:hidden; text-overflow:ellipsis; word-wrap:break-word; white-space:normal!important; -webkit-line-clamp:2; -webkit-box-orient:vertical; 复制 单行文字显示,显示不开的用省略号 max-width:380rpx; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; 复制

  • 声明

    1PublicTypeTypeValueColum 2'列索引号 3columnIndexAsInteger 4'列名称 5columnNameAsString 6'对应字典列索引。没有字典对应时为0 7dicColumnIndexAsInteger 8'对应字典列索引。没有字典对应时为空 9dicColumnNameAsString 10EndType 11 12'学校标识码 13PublicxxbsmAsString 14'定义一个结构,描述数据页 15 16PublicConstvalueSheetNameAsString="学生基础信息" 17PublicConstdicSheetNameAsString="字典" 18PublicConstmsgSheetNameAsString="错误信息" 19PublicConstreadmeSheetNameAsString="说明" 20PublicConstexcelSheetNameAsString="模板信息" 21'记录总的校验数 22PublictotalCountAsInteger 23'导出记录总数 24Publice

  • LINUX系统的7种运行级别

    linux有7中用户级别(runlevel) 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动 运行级别1:单用户工作状态,改root密码,用于系统维护,禁止远程登陆 运行级别2:多用户状态(没有NFS,无网络) 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式 运行级别4:系统未使用,保留 运行级别5:X11控制台,登陆后进入图形GUI模式 运行级别6:系统重启,默认运行级别不能设为6,否则不能正常启动 运行级别原理: 1、 在目录/etc/rc.d/init.d/下有很多服务器脚本程序,一般称为服务(service) 2、 在/etc/目录下有7个名为rc?.d的目录,对应7个运行级别 3、 在/etc/rc?.d目录下有一些软链接,这些软链接指向init.d目录下的service脚本文件,命名规则在这些service脚本中,用来声明这些server是否开机启动。 上图可以看到为什么会命名S97rhnsd的软链接,(S代表开机启动,K代表开机不启动)是因为服务脚本中声明过的,具体会在chkconfig命令中

  • Java小方法

    /** *计算百分比. *@paramdividend被除数 *@paramdivisor除数 *@return结果 */ privateStringgetPercent(longdividend,longdivisor){       NumberFormatformat=NumberFormat.getPercentInstance();       format.setMinimumFractionDigits(2);       if(divisor==0){           returnformat.format(0.0);       }else{   &n

相关推荐

推荐阅读