c语言中system函数怎么用_system函数的返回值

c语言中system函数怎么用_system函数的返回值C语言中如何使用system函数一.system函数c语言中的system()函数主要用于发出一个DOS命令,该函数已经收录在标准c库中,可以直接调用。使用时包含头文件<stdlib.h>补充:DOS:DOS是DiskOperatingSystem的缩写,即磁盘操作系统。它是一个基于磁盘管理的操作系统。DOS命令:是指DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。(学习DOS命令是控制微机的基础)提供用户使用的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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;
}

结果
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193649.html原文链接:https://javaforall.net

(0)
上一篇 2025年11月21日 下午12:22
下一篇 2025年11月21日 下午1:01


相关推荐

  • function_exists与method_exists区别

    function_exists与method_exists区别1.method_exists—检查类的方法是否存在说明method_exists(mixed$object,string$method_name):bool检查类的方法是

    2022年7月1日
    25
  • Pycharm启动后加载anaconda一直updating indices造成Pycharm闪退甚至电脑崩溃

    Pycharm启动后加载anaconda一直updating indices造成Pycharm闪退甚至电脑崩溃可能跟 anaconda 文件夹有一定关系网上找找解决方案 似乎很多人有同样的困扰 知乎 pycharm 启动后总是不停的 updatingindi indexing stackoverflo PyCharm4 0 5hangson scanningfile backgroundta Constantly updatingin

    2026年3月27日
    2
  • 数据库之联合索引

    数据库之联合索引联合索引使用结论:  1):查询条件中出现联合索引第一列,或者全部,则能利用联合索引.  2):条件列中只要条件相连在一起,以本文例子来说就是:  last_name=’1′andfirst_name=’1′  与  first_name=’1′andlast_name=’1′  ,无论前后,都会利用上联合索引.  3):查询条件中没有出现

    2022年5月20日
    54
  • SpringBoot 注解的调用流程

    SpringBoot 注解的调用流程springboot 是通过 main 方法下的 SpringApplic run 方法启动的 启动的时候他会调用 refshContext 方法 先刷新容器 然后根据解析注解或者解析配置文件的形式祖册 bean 而它是通过启动类的 SpringBootAp 注解进行开始解析的 他会根据 EnableAutoCo 开启自动化配置 里面有个核心方法 ImportSelect 选择性的导入 根据 loadFanctory 根据 classpash 路径

    2026年3月17日
    1
  • IIS网站防盗链下载的解决方案[通俗易懂]

    IIS网站防盗链下载的解决方案[通俗易懂]“盗链”的定义是:此内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容。常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址(比如一些音乐、图片、软件的下载地址)然后放置在自己的网站中,通过这种方法盗取大网站的空间和流量。  为什么会产生盗链  一般浏览有一个重要的现象就是一个完整的页面并不是一次全部传送到客户端

    2022年7月23日
    14
  • Flume-Kafka-Flume对接Kafka以及Kafka数据分类传输

    Flume-Kafka-Flume对接Kafka以及Kafka数据分类传输Flume对接KafkaFlume日志采集组件;Flume对接kafka主要是为了通过kafka的topic功能,动态的增加或者减少接收的节点,并且Flume要对接多个节点是需要多个channel和sink的会导致内存不够的情况。那么可以实现的场景就是Flume采集日志文件,通过kafka给多给业务线使用。1)配置flume(flume-kafka.conf)#definea1.sources=r1a1.sinks=k1a1.channels=c1#sourcea1

    2022年6月23日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号