C中system用法

本文详细介绍了C语言中system函数的使用方法,包括暂停屏幕、改变控制台颜色和清屏等常见操作。同时对比了exit与return的区别,为读者提供了丰富的代码示例。

格式system(“命令语句”); 需要在代码中加上#include<stdlib.h>才可用。

一、system

(1)、system("pause")

作用:暂停

示例代码1:

#include <iostream>
using namespace std;
int main() {

	cout << "Hello World" << endl;
	return 0;
}

输出为:

加上 system("pause")后,输出为:

然后点击执行文件框,摁两下回车键:

以上两者的区别:摁了两下回车,才出现执行文件框最下面的字体!,但是除了回车键,其他的键只需摁一次即可!

增加system("pause")后;除回车键外,只需摁任一键即可:

(2)、COLOR [attr]
attr 指定控制台输出的颜色属性。
颜色属性由两个十六进制数字指定 --
第一个:对应于背景,
第二个:对应于前景。

例:color 5A

设置默认的控制台前景和背景颜色。

5 :紫色背景色
A :淡绿色的字体颜色

每个数字可以为以下任何值:
0 = 黑色   8 = 灰色
1 = 蓝色   9 = 淡蓝色
2 = 绿色   A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色   C = 淡红色
5 = 紫色   D = 淡紫色
6 = 黄色   E = 淡黄色
7 = 白色   F = 亮白色

#include<stdio.h> 
#include <stdlib.h>
int main()
{
	while (1)
	{
		system("color 4A");
		printf("\nHello World\n");
	}
	return 0;
}

运行结果:

 (3)、system("cls");

用于清楚屏幕内容;

示例代码:

#include <stdio.h>
#include <windows.h>
void gotoxy(int x, int y) {
	COORD pos = { x,y };
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);// 获取标准输出设备句柄
	SetConsoleCursorPosition(hOut, pos);//两个参数分别是指定哪个窗体,具体位置
}

int main() {
	int x, y;
	gotoxy(2, 2);
	printf("hello,world!\n");
	system("CLS");
	gotoxy(10, 10);
	printf("Good good study!\n");
	system("pause");
	return 0;
}

运行结果:

二、exit和return

 

exit(0)与exit(1)、return区别

C语言中exit(0)与exit(1)有什么区别(详解)

【C】C语言中的_exit()与exit()

https://wenku.baidu.com/view/4c67e89231126edb6e1a100a.html

https://wenku.baidu.com/view/ffe5fb89647d27284a73510a.html

 

在C语言中,`system`函数声明在`<stdlib.h>`头文件中,其原型为`int system(const char *command);`。该函数的主要作用是执行一个系统命令。 `system`函数会调用`fork()`产生子进程,由子进程来调用`/bin/sh -c string`来执行参数`string`字符串所代表的命令,此命令执行完后随即返回原调用的进程。在调用`system()`期间`SIGCHLD`信号会被暂时搁置,`SIGINT`和`SIGQUIT`信号则会被忽略[^1]。 以下是一些`system`函数的常见用法示例: #### 1. 执行系统命令 在Windows系统下,可以使用`system`函数调用`dir`命令列出当前目录下的文件和文件夹;在Linux或macOS系统下可以使用`ls`命令实现相同功能。 **Windows系统示例**: ```c #include <stdlib.h> #include <stdio.h> int main() { int result = system("dir"); if (result != 0) { printf("命令执行失败\n"); } return 0; } ``` **Linux或macOS系统示例**: ```c #include <stdlib.h> #include <stdio.h> int main() { int result = system("ls"); if (result != 0) { printf("命令执行失败\n"); } return 0; } ``` #### 2. 执行系统关机命令 在Windows系统下,可以使用`system`函数执行关机命令。 ```c #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char a[10]; printf("请输入\"我是猪\",否则电脑将在两分钟后关闭\n"); system("shutdown -s -t 120"); scanf("%s", a); if (strcmp(a, "我是猪") == 0) { printf("恭喜你成功选择自己的属相,主动承认现实!\n"); system("shutdown -a"); } return 0; } ``` #### 3. 改变控制台颜色和查看网络信息 在Windows系统下,可以使用`system`函数改变控制台的前景色和查看当前网络情况。 ```c #include <stdio.h> #include <stdlib.h> int main() { system("color 02"); system("ipconfig"); system("pause"); return 0; } ``` ### 函数返回值 - 若`command`为`NULL`,则当系统支持命令处理程序时返回非零值,不支持时返回零。 - 若`command`不为`NULL`,则命令执行成功时返回命令的退出状态,命令执行失败时返回 -1。 ### 注意事项 - `system`函数是通过产生新进程实现的,父进程和子进程间没有进程通信,子进程自然改变不了父进程的环境变量[^2]。 - 在使用`system`函数时,要注意输入的命令是否合法,避免因输入非法命令导致程序出现异常。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值