巧用system函数个性化屏幕显示

  函数名:system
  功  能: 发出一个DOS命令
  用  法: system("DOS命令");
            (system函数需加头文件<stdlib.h>后方可调用。)
-----------------------------------------------------------------------------------------------------------
 
  使用system函数,可以个性化控制台程序的屏幕窗口显示。下面介绍几个用法:

  一、system("color 颜色参数")

  改变屏幕窗口的背景色和文字颜色。

  颜色属性由两个十六进制数字指定 -- 第一个为背景色,第二个则为文字颜色。每个数字可以为以下任何值之一:

0 = 黑色
1 = 蓝色
2 = 绿色
3 = 浅绿色
4 = 红色
5 = 紫色
6 = 黄色
7 = 白色
8 = 灰色
9 = 淡蓝色
A = 淡绿色
B = 淡浅绿色
C = 淡红色
D = 淡紫色
E = 淡黄色
F = 亮白色

  如:添加代码 system("color 9F"),可以将屏幕窗口背景色设置为蓝色,文字颜色设置为白色。

1 #include <stdio.h>
2 #include <stdlib.h>
3 
4 int main(int argc, char *argv[])
5 {
6     system("color 9F");
7     printf("我的C语言程序!\n");
8     return 0;
9 }

  程序运行窗口:

注意:(1)如果只给定一个参数,则只设置背景色。如:system("color 9"),背景色为蓝色,文字颜色不变。

         (2)如果没有给定任何参数,如:system("color"),该命令会将颜色还原到 CMD.EXE 启动时的默认颜色。

  二、system("pause")
  多数IDE工具在编译C语言程序时,会自动在main函数后面加上system("pause"),这样可以暂停程序运行,以便于在屏幕上观察程序的执行结果。但也有一些IDE工具不会自动加入这个语句,编译运行后,屏幕窗口会一闪而过,自动关闭,来不及查看程序运行结果,这时就需要在main函数中加上这个语句了。
1 #include <stdio.h>
2 #include <stdlib.h>
3 int main(int argc, char *argv[])
4 {
5     printf("我的C语言程序!\n");
6     system("pause");
7     return 0;
8 }

  在运行结果后面会显示:按任意键继续. . .

  如果不想显示提示,可以使用输出重定向命令,将第6行代码改为:

system("pause >nul");

  这样屏幕上就不再显示“按任意键继续. . .”的提示了。注意是nul,不是null。

  大于号>,表示将命令结果输出重定向到文件、打印机等其他设备中。

  nul是DOS中的一个虚拟的空设备。">nul"表示把命令产生的屏幕显示信息重定向(>)到虚拟空设备(nul),这样在屏幕上就不会显示pause命令的执行结果了。

  三、system("cls") 

  清除屏幕信息。当在编程中需要清除已经显示的信息时,比如,需要循环录入学生信息,第一个学生的信息录完后,希望清除这些信息,再录入第二个学生信息,这时这个语句就派上用场了。

 

posted @ 2016-02-20 20:57  向往蓝天的菜鸟  阅读(2348)  评论(0编辑  收藏  举报