1、C语言可以通过system函数实现调用系统命令(shell 命令)。
system函数声明于stdlib.h, 形式为
int system(const char *cmd)
功能为执行cmd中的shell指令。
2、在windows中,关机命令为shutdown. 具体说明如图:
更多信息,可以命令行下输入shutdown /?查看。
3、从命令说明上可以得知,shutdown /s 即可实现关机效果。
4、参考代码:
#include <stdlib.h>int main()
{
system("shutdown /s")//调用关机命令。
while(1)
}
5、注意事项:
该命令仅用于windows,如果要移植到其它 *** 作系统,则需要适配目标系统的关机命令,如Linux的halt或shutdown -h。
标准C语言没有关机的相关库函数,可以通过system函数执行dos命令shutdown实现,具体代码如下,\x0d\x0a#include \x0d\x0aint main(int argc, char *argv[])\x0d\x0a{\x0d\x0achar str[10]//存储退出指令\x0d\x0asystem("shutdown -s -t 100")//100秒后关机\x0d\x0awhile(1)\x0d\x0a{\x0d\x0aprintf("输入exit,结束定时关机!\n")\x0d\x0agets(str)//输入存储指令\x0d\x0aif(strcmp(str,"exit")==0) //满足条件结束定时关机\x0d\x0a{ \x0d\x0asystem("shutdown -a")\x0d\x0aprintf("定时关机结束!\n")\x0d\x0abreak\x0d\x0a} \x0d\x0a} \x0d\x0areturn 0\x0d\x0a}\x0d\x0a\x0d\x0ashutdown使用方式,shutdown [-t ] [-rkhncfF] time [message];\x0d\x0a其中,参数:\x0d\x0a-t : 设定在t秒之后进行关机程序\x0d\x0a-k : 并不会真的关机,只是将警告讯息传送给所有使用者\x0d\x0a-r : 关机后重新开机\x0d\x0a-h : 关机后停机\x0d\x0a-n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机\x0d\x0a-c : 取消目前已经进行中的关机动作\x0d\x0a-f : 关机时,不做 fcsk动作(检查 Linux 档系统)\x0d\x0a-F : 关机时,强迫进行 fsck 动作\x0d\x0atime : 设定关机的时间\x0d\x0amessage : 传送给所有使用者的警告讯息\x0d\x0a可以通过shutdown -a取消关机 *** 作。举例如下://#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
int print()
{
printf(" ╪╪╪╪╪╪╧╧╧╧╧╧╧╧╪╪╪╪╪╪\n")
printf("╔═══╧╧ C语言 关机程序 ╧╧═══╗\n")
printf("║※1.实现10分钟内的定时关闭计算机 ║\n")
printf("║※2.立即关闭计算机 ║\n")
printf("║※3.注销计算机 ║\n")
printf("║※0.退出系统 ║\n")
printf("╚═══════════════════╝\n")
return 0
}
void main()
{
system("title C语言关机程序")//设置cmd窗口标题
system("mode con cols=48 lines=25")//窗口宽度高度
system("color 0B")
system("date /T")
system("TIME /T")
char cmd[20]="shutdown -s -t "
char t[5]="0"
print()
int c
scanf("%d",&c)
getchar()
switch(c)
{
case 1:printf("您想在多少秒后自动关闭计算机?(0~600)\n")scanf("%s",t)system(strcat(cmd,t))break
case 2:system("shutdown -p")break
case 3:system("shutdown -l")break
case 0:break
default:printf("Error!\n")
}
system("pause")
exit(0)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)