C语言关机代码

C语言关机代码,第1张

可以通过C语言调用系统命令实现关机。

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)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8093161.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存