C语言中如何使用system函数

2023-11-07

C语言中如何使用system函数

一.system函数

c语言中的system()函数主要用于发出一个DOS命令,该函数已经收录在标准c库中,可以直接调用。使用时包含头文件<stdlib.h>

补充:
DOS:DOS是Disk Operating System的缩写,即磁盘操作系统。它是一个基于磁盘管理的操作系统。
DOS命令:是指DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。
(学习DOS命令是控制微机的基础)

提供用户使用的DOS命令可分为三类:
1.内部命令
属DOS命令中常驻内存的一部分,它是在当系统作冷、热启动时由磁盘上的系统文件装入内存的。用户使用时仅仅是调用内存中系统区的某一程序段来执行。例如,DIR、TYPE、COPY等命令都属内部命令。
2.外部命令
是以可执行的程序文件形式(通常后缀为.EXE或.COM)存在于磁盘上。这就意味着该命令文件必须记录在磁盘或已插入驱动器的软盘上,否则DOS是找不到该命令的。例如,FORMAT.COM,DISKCOPY.COM等。
3.批处理命令
在使用磁盘命令过程中,有时需要连续使用几条DOS命令,有时则要多次重复使用若干条DOS命令,还有的时候需要有选择地使用某些DOS命令。为了满足这些要求,DOS提供了一些特殊文件——后缀为BAT的文件。该文件允许用户组织键盘命令语言程序,一次建立,多次执行。这个BAT文件可用字处理软件来建立。最典型的例子是在DOS系统盘上一个名为AUTOEXEC.BAT的批命令文件,当系统作冷、热启动时,机器会自动执行该文件上的DOS命令。

二.system函数的使用

system(“pause”)可以实现冻结屏幕,便于观察程序的执行结果;

system(“CLS”)可以实现清屏操作。

system(color xx)函数可以改变控制台的前景色和背景,“color xx”中的第一个十六进制数为背景色设置,第二个十六进制数为前景色设置。

注:各颜色对应的数值
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 湖蓝色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色

system(“del d:\123.txt”)删除文件

system(“ipconfig”);查看当前网络情况

等等很多DOS操作

例:

#include<stdio.h>     //标准输入输出库函数
#include<stdlib.h>    //可以输入system用以键入DOS管理窗口界面下的cmd中的命令
#include<string.h>    //字符串,数组定义的库函数

int main()
{
    char a[10];    //定义一个字符类型的数组,便于玩家从键盘键入各类字符信息

    printf("请输入\"我是猪\",否则电脑将在两分钟后关闭\n");  //“我是猪”此语句可由制定者自由更改,不过后面相应的位置也要记得改动

    system("shutdown -s -t 120");    //60秒倒计时关机命令,时间可自由更改

    scanf("%s", a);             //玩家从键盘键入字符串

    if (strcmp(a, "我是猪") == 0)
	{  //比较两个字符串,若相等则执行IF下的语句

        printf("恭喜你成功选择自己的属相,主动承认现实!\n");

        system("shutdown -a");  //结束自动关机倒计时命令,当然也可以打破规则,取消该语句,不过那样就太邪恶了
    }
    else
	{
		goto flag;        //跳转语句,跳转至flag标记处继续执行
	}
    return 0;
}
#include<stdio.h>     //标准输入输出库函数
#include<stdlib.h>    //可以输入system用以键入DOS管理窗口界面下的cmd中的命令
#include<string.h>    //字符串,数组定义的库函数

int main()
{
	system("color 02");			//将前景色设置为绿色,背景色没有改变
	system("ipconfig");		//查看当前网络情况
	
	system("pause");
	return 0;
}

结果
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言中如何使用system函数 的相关文章

  • 创建 DirectoryEntry 实例以供测试使用

    我正在尝试创建 DirectoryEntry 的实例 以便可以使用它来测试将传递 DirectoryEntry 的一些代码 然而 尽管进行了很多尝试 我还是找不到实例化 DE 并初始化它的 PropertyCollection 的方法 我有
  • C++:无法使用scoped_allocator_adaptor传播polymorphic_allocator

    我有一个vector
  • Signalr 在生产服务器中总是陷入长轮询

    当我在服务器中托管应用程序时 它会检查服务器端事件并始终回退到长轮询 服务器托管环境为Windows Server 2012 R1和IIS 7 5 无论如何 我们是否可以解决这个问题 https cloud githubuserconten
  • 在 Xamarin Android 中将图像从 URL 异步加载到 ImageView 中

    我有一个包含多个项目的 ListView 列表中的每个项目都应该有一个与之关联的图像 我创建了一个数组适配器来保存每个列表项并具有我希望加载的图像的 url 我正在尝试使用 Web 请求异步加载图像 并设置图像并在加载后在视图中更新它 但视
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • 如何在我的应用程序中使用 Windows Key

    Like Windows Key E Opens a new Explorer Window And Windows Key R Displays the Run command 如何在应用程序的 KeyDown 事件中使用 Windows
  • 为什么禁止在 constexpr 函数中使用 goto?

    C 14 对你能做什么和不能做什么有规则constexpr功能 其中一些 没有asm 没有静态变量 看起来相当合理 但标准也不允许goto in constexpr功能 即使它允许其他控制流机制 这种区别背后的原因是什么 我以为我们已经过去
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 为什么模板不能位于外部“C”块内?

    这是一个后续问题一个答案 https stackoverflow com questions 4866433 is it possible to typedef a pointer to extern c function type wit
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 是否有比 lex/flex 更好(更现代)的工具来生成 C++ 分词器?

    我最近将源文件解析添加到现有工具中 该工具从复杂的命令行参数生成输出文件 命令行参数变得如此复杂 以至于我们开始允许它们作为一个文件提供 该文件被解析为一个非常大的命令行 但语法仍然很尴尬 因此我添加了使用更合理的语法解析源文件的功能 我使
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • 检查 url 是否指向文件或页面

    我们需要以下内容 如果文件确实是文件 则从 URL 下载该文件 否则 如果它是一个页面 则什么也不做 举个简单的例子 我有以下命令来下载文件 My Computer Network DownloadFile http www wired c
  • 将日期参数传递给对 MVC 操作的 ajax 调用的安全方法

    我有一个 MVC 操作 它的参数之一是DateTime如果我通过 17 07 2012 它会抛出一个异常 指出参数为空但不能有空值 但如果我通过01 07 2012它被解析为Jan 07 2012 我将日期传递给 ajax 调用DD MM
  • 作为字符串的动态属性名称

    使用 DocumentDB 创建新文档时 我想设置属性名称动态地 目前我设置SomeProperty 像这样 await client CreateDocumentAsync dbs db colls x new SomeProperty
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何将字符串“07:35”(HH:MM) 转换为 TimeSpan

    我想知道是否有办法将 24 小时时间格式的字符串转换为 TimeSpan 现在我有一种 旧时尚风格 string stringTime 07 35 string values stringTime Split TimeSpan ts new
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但

随机推荐

  • 51单片机有几个通用io口_我在职高教单片机——02零基础学51单片机IO口(1)

    大家好 我是老王 职高老师一枚 一直从事单片机 计算机 电子技术基础等课程的教学 对于职高的学生层次 同行应该都懂的 老师在课堂上教学几乎是没什么成就感的 正是如此 才有了借助头条平台寻求认同感和成就感的想法 在这里 我准备陆续把自己花了很
  • 程序是如何从编辑到执行的——我的初步理解

    目录 1 预处理 2 编译 3 汇编 3 1 机器码的格式 3 2 编码过程 4 链接 5 取指 6 译码 7 执行 8 访存 9 写回 10 更新PC 今天来谈谈 一句代码 是如何从被编辑到被执行的 以下为本人在阅读相关书籍资料后的初步理
  • IDEA项目上传至git常见问题

    问题一 Push rejected Push to origin master was rejected 方案一 git pull origin master allow unrelated histories 打开git命令行窗口 依次输
  • 数据挖掘:基本概念理解

    定义 数据挖掘 从大量数据中挖掘有趣模式和知识的过程 一 知识发现过程 1 数据预处理 1 数据清理 消除噪声和删除不一致数据 2 数据集成 多种数据源组合在一起 3 数据选择 从数据库中提取与分析任务相关的数据 4 数据变换 通过汇总或聚
  • 卸载掉360之后无法删除360safe文件夹解决办法!

    卸载掉360之后无法删除360safe文件夹解决办法 问题是这样的 选择 360safe 文件夹 右键选择 删除 结果如下 一开始觉得是360未卸载干净 比如 360主动防御模块 之类的 但是 打开任务管理器一看 没有与360相关的东东了呀
  • 紫光云服务器芯片,紫光云与新华三半导体共建芯片设计云2.0 携手打造一站式云端芯片平台...

    原标题 紫光云与新华三半导体共建芯片设计云2 0 携手打造一站式云端芯片平台 2021年是芯片设计云元年 行业需求呈现井喷态势 中国云服务新势力脱颖而出 在世界舞台崭露头角 为中国集成电路行业发展插上了隐形翅膀 近日 紫光云就正式通过三星F
  • 【牛客网 - 华为机试】HJ1 字符串最后一个单词的长度

    HJ1 字符串最后一个单词的长度 题目描述 计算字符串最后一个单词的长度 单词以空格隔开 输入描述 输入一行 代表要计算的字符串 非空 长度小于5000 输出描述 输出一个整数 表示输入字符串最后一个单词的长度 示例1 输入 hello n
  • redis输入密码去除提示Warning: Using a password redis输入密码去除提示Warning: Using a password...

    2019独角兽企业重金招聘Python工程师标准 gt gt gt redis输入密码去除提示Warning Using a password hello运维 百家号11 0510 41 问题现象 redis的监控 经常使用zabbix 通
  • MVC框架理解(整理)

    MVC是三个单词的首字母缩写 它们是Model 模型 View 视图 和Controller 控制 视图 视图 View 代表用户交互界面 对于Web应用来说 可以概括为HTML界面 但有可能为XHTML XML和Applet 随着应用的复
  • 通过命令行关闭Bitlocker

    cmd中输入以下命令关闭 manage bde off C 但是有时候出现如下提示 此时需要先执行如下命令 系统分区不是C的话更改下面的盘符 manage bde autounlock ClearAllKeys c 然后再执行即可 mana
  • 干货来了!!简单操作让你的GitHub格子重新绿起来

    自从得知了GitHub这个网站 我就开始把自己的代码每天提交上去 看着小绿格子慢慢的特别有成就感 事故 发生了 就在上周一之后我的小绿格子突然不变色了 我一直以为是学校网太差 一周过去了总觉得不对劲 专门找时间查了一下 经过在网上搜索 我的
  • 编写高质量代码:改善Java程序的151个建议(第1章:Java开发中通用的方法和准则___建议14~20)...

    作为一个由影视圈转行做Java的菜鸟来说 读书是很关键的 本系列是用来记录 编写高质量代码 改善java程序的151个建议 这本书的读书笔记 方便自己查看 也方便大家查阅 建议14 使用序列化类的私有方法巧妙解决部分属性持久化问题 建议15
  • Windows通过powershell永久添加、删除环境变量

    文章目录 1 管理环境变量 PATH 1 1 添加powershell函数 1 2 函数用法 2 管理非 PATH 环境变量 使用windows系统时 当安装或解压一个可执行程序后 为了更方便的调用程序 往往会向环境变量 path中添加该程
  • 分布式并发查询结果不重复可行性方案

    场景 接口逻辑 资源池获取数据 并在拿到数据后进行更新 问题 高并发下 获取的结果集相同的概率大 资源争抢更新 导致并发的相同的数据后更新的异常 尝试方案 序号 方案 问题 1 获取结果集100个 随机挑选一个 不可行 并发和随机到同一个的
  • [转]background-image属性研究

    http blog sina com cn s blog 4a0eab070100d8pk html 在设置background image属性时 经常会遇到一个background position 一直不怎么会用 今天有空研究下 版本
  • ssh简介

    常见的远程管理工具方式 RDP remote desktop protocal 协议 windows远程桌面管理 图形界面 telenet CLI界面下远程管理 几乎所有操作系统都有 内容明文传输 23 ssh CLI界面下的远程管理 几乎
  • WIFI:802.11协议帧格式

    802协议桢格式 802 11和Wi Fi技术并不是同一个东西 Wi Fi标准是802 11标准的一个子集 并且是Wi Fi联盟负责管理 802协议桢格式 协议 发布年份 日期 Op 标准频宽 实际速度 标准 实际速度 最大 半径范围 室内
  • JavaScript和php(各版本)对称加解密

    使用npm先安装crypto js npm install crypto js javascript对称加解密 import CryptoJs from crypto js method encrypt 对称加密字符串 param Stri
  • 八股文死记硬背打脸记

    背景 我们都知道 再编程领域数据结构的重要性 常见的数据结构包括 List Set Map Queue Tree Graph Stack 等 其中 List Set Map Queue 可以从广义上统称为集合类数据结构 而Java也提供了很
  • C语言中如何使用system函数

    C语言中如何使用system函数 一 system函数 c语言中的system 函数主要用于发出一个DOS命令 该函数已经收录在标准c库中 可以直接调用 使用时包含头文件