C语言 | 您所在的位置:网站首页 › 命令关机比菜单关机时间长 › C语言 |
1024G 嵌入式资源大放送!包括但不限于C/C++、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取! 前言今天,我同学问我这个程序怎么做: 于是,我用C给他写了一个类似的控制台程序: 我的这个控制台程序有8个小功能,分别是: 1、定时n秒后自动关机。 2、定时到x点x分提醒你是否要关机,如果你没确认不关机,则在60s后将自动关机。 3、立即关机。 4、取消自动关机。 5、注销计算机。 6、打开计算器。 7、打开画图软件。 8、打开记事本。 在介绍各个功能之前,首先介绍一个函数: system函数。 system函数system是C函数库 stdlib.h中的一个函数,用于发出一个DOS命令给系统,函数原型为: int system (const char * command);例如: system("pause"); 可以实现冻结屏幕。在往期笔记【C语言笔记】你的黑窗口闪退?也有介绍,欢迎阅读。 这里的8个功能,我们都是借用这个函数来实现的,然后再添加一些处理逻辑即可。 对DOS命令有一些了解的同学可能觉得定时关机、取消关机之类的只要一行命令就可以了,干嘛要那么麻烦。的确,不实用!但是,我们是本着练习C编程的原则来做的,看似简单的功能,做起来也会遇到很多问题的,特别注意要理清楚一些逻辑关系及一些细节。下面分析各代码块: 功能分析这几个功能中,其中功能1和功能2的实现比较麻烦一点。其他几个功能都只是调用 system函数往发DOS命令给系统。下面看各个功能的具体实现: 1、定时n秒后自动关机 功能演示这个功能像我手机的自动关机的操作: 我给我的手机定时每天0点0分自动关机,关机之前先倒计时一分钟,看你是否要真的关机,此时可以点击立即关机,也可以取消关机。 功能演示选择该功能时,先提示是否要关机,预防误操作。 代码 // 菜单选择3:立即关机 void choice_03(void) { char shutdown_affirm; // 确认是否真的需要立即关机 scanf("%*[^\n]");scanf("%*c"); // 清空缓冲区 printf("您确定要立即关闭您的计算机(y/n)?\n"); scanf("%c",&shutdown_affirm); if (shutdown_affirm == 'y') { printf("您的计算机即将关机!\n"); Sleep(1000); system("shutdown -p"); } else { system("cls"); printf_menu(); } } 4、取消自动关机若此时没有定时关机操作,则选择取消自动关机时,会打印输出: 因为没有任何进行中的关机过程,所以无法终止系统关机。(1116) 代码 // 菜单选择4:取消自动关机 void choice_04(void) { system("cls"); // 清屏 printf("您已取消自动关机\n"); system("shutdown /a"); // 取消自动关机 printf_menu(); // 打印输出菜单 } 5、注销计算机 代码 // 菜单选择5:注销 void choice_05(void) { system("cls"); // 清屏 printf("当前用户即将被注销\n"); system("shutdown -l"); } 6、打开计算器 代码 // 菜单选择6:打开计算器 void choice_06(void) { system("calc"); // 打开计算器的命令 system("cls"); // 清屏 printf_menu(); // 打印输出菜单 } 7、打开画图软件 代码 // 菜单选择7:打开画图软件 void choice_07(void) { system("mspaint"); // 打开画图软件的命令 system("cls"); // 清屏 printf_menu(); // 打印输出菜单 } 8、打开记事本 代码 // 菜单选择8:打开记事本 void choice_08(void) { system("notepad"); // 打开记事本的命令 system("cls"); // 清屏 printf_menu(); // 打印输出菜单 } 本程序用到的DOS命令 1、清屏操作:cls 2、定时关机:shutdown -s -t sec (说明:sec为要定时的秒数) 3、取消定时关机:shutdown /a 4、输出此刻的时间:time /T 5、输出今天的日期:date /T 6、立即关机:shutdown -p 7、注销计算机:shutdown -l 8、设置cmd窗口标题:title 正念君 (设置标题为“正念君”) 9、设置窗口宽高:mode con cols=60 lines=30 10、设置窗口前景色与背景色:color f0 11、打开计算器:calc 12、打开画图软件:mspaint 13、打开记事本:notepad这些命令可以cmd窗口中运行,如: 有些不需要依赖于cmd窗口的命令也可以直接在运行窗口中输入,如在运行窗口中输入 calc打开计算器: 其中,可通过组合键【win+r】调出运行窗口。 完整程序由于完整的代码较长,就不贴出来了,有兴趣的朋友可在后台回复关键词:定时关机,获取该 .c 文件。温馨提示:链接失效,可在后台回复,或添加小编微信(备注XX链接失效)。 总结论实用性,除了功能二之外,其他功能都可以直接通过在cmd窗口中输入命令就可以实现。但多写一些这些功能性的东西,可以很好的锻炼我们的编程实践能力及编程的逻辑思维,这对于提高我们嵌入式应用的编写能力有很大的帮助! 这次写的是控制台的定时关机程序,之后有时间有机会再把该定时关机程序做成图形界面的形式,欢迎持续关注! 转发、点在看就是对小编最大的支持! 猜你喜欢【Linux笔记】Linux下编译C程序 【Linux笔记】make工程管理工具(二) 【C语言笔记】关于数组的一个陷阱! 【C语言笔记】操作位的技巧 【RT-Thread笔记】裸机系统与多线程系统 【RT-Thread笔记】关于RT-Thread的启动问题 1024G 嵌入式资源大放送!包括但不限于C/C++、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取! |
CopyRight 2018-2019 实验室设备网 版权所有 |