使用C语言编写一个关机恶搞小程序

 更新时间:2024年02月01日 14:10:25   作者:Code Warrior  
system函数的参数是"shutdown"时,它将会执行系统的关机命令,所以本文将利用这一特点制作一个关机恶搞小程序,感兴趣的小伙伴可以跟随小编一起学习一下

1. system("shutdown")的介绍

当system函数的参数是"shutdown"时,它将会执行系统的关机命令。

具体来说,system("shutdown")的功能是向操作系统发送一个关机信号,请求关闭计算机。这将触发操作系统执行一系列的关机操作,包括关闭所有正在运行的程序、保存必要的系统信息、并最终关闭计算机的电源。

需要注意的是,执行system("shutdown")通常需要管理员权限,因为关机操作涉及到系统级别的资源管理。在不同的操作系统上,关机命令可能会有所不同,因此具体的实现细节可能会有所差异。

总结来说,system("shutdown")是一个用于触发计算机关机操作的命令,通过调用外部的关机命令来实现这一功能。

通过改变system("shutdown")中的参数则可以产生不同的关机信号,接下来我将详细讲解几个实用有趣关机命令。

2. 关机命令

2.1 强行关闭正在运行的应用

执行这个效果需要用到参数 /f

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /f");
    return 0;
}

这个被代码执行后会直接关闭我们计算机所有正在运行的应用,并进入到锁屏界面。

2.2 重启并保留原来的程序

执行这个效果需要用到参数 /g

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /g");
    return 0;
}

这个被代码执行后会直接重新启动计算机,重启完后将会打开执行这个代码前正在运行的应用。

2.3 关机并保留原来的程序

执行这个效果需要用到参数 /sg

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /sg");
    return 0;
}

这个被代码执行后会在30s后关闭计算机,当我们再次重启计算机时它会将会打开执行这个代码前正在运行的应用。

2.4 关机并准备快速启动

执行这个效果需要用到参数 /hybrid和/s

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /hybrid /s");
    return 0;
}

这个被代码执行后会关闭计算机,并在关机过程中将系统状态保存到硬盘上,以实现快速启动。

2.5 关机没有超时或警告

执行这个效果需要用到参数/p

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /p");
    return 0;
}

这个被代码执行后就跟平常的关机一样。

2.6 关机有超时或警告

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /s");
    return 0;
}

这个被代码执行后会提醒你多久后会关机,一般是默认30s后关机,要想修改这个时间关机,我们还可以在后面再加上参数/t xxx 将关闭前的超时时间设置为 xxx 秒。有效范围是 0-315360000 (10 年)。

2.7 终止关机

执行这个效果需要用到参数/a

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /a");
    return 0;
}

这个被代码执行后会取消我们的关机或重启的命令,前提是这个关机或重启是有等待时间的。

2.8 立即关机

执行这个效果需要用到参数/f和/p

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /f /s");
    return 0;
}

这个被代码执行后会立即关机正在运行的应用,然后关机,从而达到立即关机的目的。

2.9 注销

执行这个效果需要用到参数/l

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /l");
    return 0;
}

这个被代码执行后会关闭应用,然后回到锁屏界面,这个与强行关闭正在运行的应用的区别是,这个是慢慢的关闭应用的,而强行关闭正在运行的应用是直接关闭应用的。

2.10 休眠

执行这个效果需要用到参数/h

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /h");
    return 0;
}

这个被代码执行后会使计算机进入一个休眠的状态,这个与平常休眠不同的是,你动键盘和鼠标时,它不会关闭休眠状态,需要你按开启键才能关闭休眠状态。

2.11 注释重启或关闭的原因

执行这个效果需要用到参数/c "comment"(comment是你要输入的文字,最多允许输入512个字符)

#include<stdlib.h>
#include<stdio.h>
int main()
{
    system("shutdown /s /c "comment"");
    return 0;
}

3. 制作恶搞小程序

将上面的程序写好后我们可以找到程序的文件目录。将其发给你的好友,或者将其包装一下。

 改为release的环境

找到程序的所在文件位置:

 然后将其复制到桌面上来,直接发给好友。

或者将程序复制到桌面后右键点击它,然后点击创建快捷方式,然后右键点击我们创建的快捷方式,点开属性,点击快捷方式,点击更换图标,然后按照同样的方式点开其他软件的更换图标,复制如下图的东西,然后粘贴到我们的程序图标那里,点击确定就可以将我们程序的图标改为,我们复制的应用图标了。最后把名字改了,我们就制作好了一个谁也认不出来的恶搞软件了。

上面这两个都是我写的关机程序,一点开就会直接关机。 

以上就是使用C语言编写一个关机恶搞小程序的详细内容,更多关于C语言关机恶搞的资料请关注脚本之家其它相关文章!

相关文章

  • Python绘图之详解matplotlib

    Python绘图之详解matplotlib

    这篇文章主要介绍了Python绘图之详解matplotlib,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C++ 遍历目录下文件简单实现实例

    C++ 遍历目录下文件简单实现实例

    这篇文章主要介绍了c++ 遍历文件的相关资料,这里附有实现实例代码,需要的朋友可以参考下
    2017-02-02
  • C语言数独游戏的求解方法

    C语言数独游戏的求解方法

    这篇文章主要为大家详细介绍了C语言数独游戏的求解方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • C语言一看就懂的选择与循环语句及函数介绍

    C语言一看就懂的选择与循环语句及函数介绍

    函数是一个功能模块,它把实现某个功能的代码块包含起来,并起一个函数名,供别人调用,如printf函数,如system函数。是程序运行当中包装起来的一个步骤;选择与循环是编程中最常用的结构,本篇文章用最简单的文字带你了解它们
    2022-04-04
  • C语言数据结构二叉树简单应用

    C语言数据结构二叉树简单应用

    这篇文章主要介绍了C语言数据结构二叉树简单应用的相关资料,需要的朋友可以参考下
    2017-05-05
  • C++ Boost shared_ptr共享指针详细讲解

    C++ Boost shared_ptr共享指针详细讲解

    shared_ptr是一个标准的共享所有权的智能指针,允许多个指针指向同一个对象,定义在memory文件中,命名空间为std,这篇文章主要介绍了C++ shared_ptr使用,需要的朋友可以参考下
    2022-11-11
  • 关于C++读入数字按位取出与进制转换问题(典型问题)

    关于C++读入数字按位取出与进制转换问题(典型问题)

    这篇文章主要介绍了关于C++读入数字按位取出与进制转换问题,是一个非常典型的问题,本文通过实例举例给大家介绍的非常详细,需要的朋友可以参考下
    2020-02-02
  • C语言学习之柔性数组详解

    C语言学习之柔性数组详解

    结构体的最后一个元素允许是未知大小的数组,这就叫柔性数组。这篇文中主要为大家详细介绍了C语言中柔性数组的相关知识,需要的可以了解一下
    2023-03-03
  • C++深入讲解new与deleted关键字的使用

    C++深入讲解new与deleted关键字的使用

    这篇文章主要介绍了C++中new与deleted关键字的使用,new在动态内存中为对象分配空间并返回一个指向该对象的指针;delete接受一个动态对象的指针, 销毁该对象, 并释放与之关联的内存
    2022-05-05
  • C语言实现简单学生成绩管理系统

    C语言实现简单学生成绩管理系统

    这篇文章主要为大家详细介绍了C语言实现简单学生成绩管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01

最新评论