### C语言图形编程知识点 #### 一、屏幕操作函数 **1. clrscr() 清除字符窗口函数** - **功能**: 函数`clrscr()`用于清除整个当前字符窗口,并将光标定位于左上角(1,1)处。 - **用法**: 调用方式为 `void clrscr(void);` - **说明**: 括号中的`void`表示该函数无参数。 - **头文件**: `conio.h` - **返回值**: 无 - **示例**: 可以参考`clreol()`函数的实例。 **2. window() 字符窗口函数** - **功能**: 函数`window()`用于在指定位置建立一个字符窗口。 - **用法**: 调用方式为 `void window(int left, int top, int right, int bottom);` - **说明**: 参数`left`、`top`为窗口左上角坐标;`right`、`bottom`为其右下角坐标。如果坐标无效,函数不会生效。成功调用后,所有定位坐标都是相对于窗口的,而不是相对于整个屏幕。但建立窗口所用的坐标总是相对于整个屏幕的绝对坐标。 - **头文件**: `conio.h` - **返回值**: 无 - **示例**: 在下面的`gotoxy()`函数示例中可以看到调用该函数的具体实现。 **3. gotoxy() 光标定位函数** - **功能**: 函数`gotoxy()`将字符屏幕上的光标移动到当前窗口指定的位置上。 - **用法**: 调用方式为 `void gotoxy(int x, int y);` - **说明**: 参数`x`、`y`为光标定位的坐标,如果坐标超界则光标不会移动。在字符状态(文本状态)下经常用到。 - **头文件**: `conio.h` - **返回值**: 无 - **示例**: ```c #include <conio.h> void border(int startx, int starty, int endx, int endy) { register int i; gotoxy(1, 1); for (i = 0; i <= endx - startx; i++) putch('-'); gotoxy(1, endy - starty); for (i = 0; i <= endx - startx; i++) putch('|'); } ``` #### 二、字符属性函数 **10. textmode() 文本模式函数** - **功能**: 设置文本模式,控制字符的显示样式。 - **用法**: `int textmode(int mode);` - **说明**: 参数`mode`定义了文本模式,比如普通模式、高亮模式等。 - **头文件**: `conio.h` - **返回值**: 返回之前的文本模式设置值。 **11. highvideo() 高亮度函数** - **功能**: 设置字符高亮度显示。 - **用法**: `void highvideo(void);` - **说明**: 使当前文本颜色变为高亮度显示。 - **头文件**: `conio.h` - **返回值**: 无 **12. lowvideo() 低亮度函数** - **功能**: 设置字符低亮度显示。 - **用法**: `void lowvideo(void);` - **说明**: 使当前文本颜色变为低亮度显示。 - **头文件**: `conio.h` - **返回值**: 无 **13. normvideo() 正常显示函数** - **功能**: 恢复字符正常亮度显示。 - **用法**: `void normvideo(void);` - **说明**: 将文本颜色恢复到默认亮度。 - **头文件**: `conio.h` - **返回值**: 无 **14. textcolor() 文本颜色函数** - **功能**: 设置文本的颜色。 - **用法**: `void textcolor(int color);` - **说明**: 参数`color`定义了文本的颜色,如黑色、红色等。 - **头文件**: `conio.h` - **返回值**: 无 **15. textattr() 文本属性函数** - **功能**: 设置文本的综合属性。 - **用法**: `void textattr(int attr);` - **说明**: 参数`attr`定义了文本的综合属性,包括颜色和亮度。 - **头文件**: `conio.h` - **返回值**: 无 **16. textbackground() 文本背景函数** - **功能**: 设置文本背景色。 - **用法**: `void textbackground(int color);` - **说明**: 参数`color`定义了文本背景色。 - **头文件**: `conio.h` - **返回值**: 无 #### 三、屏显状态函数 **17. wherex() 光标处x坐标函数** - **功能**: 获取光标所在位置的x坐标。 - **用法**: `int wherex(void);` - **说明**: 返回光标所在位置的x坐标值。 - **头文件**: `conio.h` - **返回值**: 返回光标x坐标值 **18. wherey() 光标处y坐标函数** - **功能**: 获取光标所在位置的y坐标。 - **用法**: `int wherey(void);` - **说明**: 返回光标所在位置的y坐标值。 - **头文件**: `conio.h` - **返回值**: 返回光标y坐标值 **19. gettextinfo() 获取文本窗口信息函数** - **功能**: 获取当前文本窗口的信息。 - **用法**: `void gettextinfo(struct text_info *ti);` - **说明**: 参数`ti`指向一个结构体,用于接收文本窗口的信息,包括窗口尺寸、位置等。 - **头文件**: `conio.h` - **返回值**: 无 #### 四、其他常用函数 **20. gettext() 拷进文字函数** - **功能**: 从当前窗口复制文字。 - **用法**: `void gettext(int left, int top, int right, int bottom, char *buf);` - **说明**: 参数`left`、`top`定义了复制区域的左上角坐标,`right`、`bottom`定义了复制区域的右下角坐标,`buf`指向一个字符数组,用于存储复制的文字。 - **头文件**: `conio.h` - **返回值**: 无 **21. puttext() 拷出文字函数** - **功能**: 将文字粘贴到当前窗口指定位置。 - **用法**: `void puttext(int left, int top, int right, int bottom, const char *buf);` - **说明**: 参数`left`、`top`定义了粘贴区域的左上角坐标,`right`、`bottom`定义了粘贴区域的右下角坐标,`buf`指向一个包含文字的字符数组。 - **头文件**: `conio.h` - **返回值**: 无 **22. movetext() 移动文字函数** - **功能**: 将指定区域的文字移动到另一位置。 - **用法**: `void movetext(int old_left, int old_top, int old_right, int old_bottom, int new_left, int new_top);` - **说明**: 参数`old_left`、`old_top`、`old_right`、`old_bottom`定义了要移动的文字区域,`new_left`、`new_top`定义了新的放置位置。 - **头文件**: `conio.h` - **返回值**: 无 #### 总结 以上介绍的函数主要用于C语言中的字符屏幕操作,包括清除屏幕、设置窗口、移动光标、设置文本颜色和背景色等功能。通过这些函数,开发者能够有效地控制屏幕上的字符输出,实现基本的图形界面编程。值得注意的是,这些函数主要适用于文本模式下的屏幕操作,在现代图形界面环境中可能不再适用。但对于学习基础图形编程和理解字符屏幕工作原理而言,它们是非常有用的工具。
剩余49页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++核心编程.zip
- vivado hls教程 ug871中文版
- 日志系统创建的一些资源
- 一些python用的note文档
- 基于python实现的人工智能聊天机器人.zip
- chatbot.zip
- 071223330付承雪.docx
- Chatbot-main.zip
- 基于springboot+vue服装销售系统(不含论文)
- 自动发货教程2024最新版.doc
- 2023-04-06-项目笔记 - 第三百五十四阶段 - 4.4.2.352全局变量的作用域-352 -2025.12.21
- 2023-04-06-项目笔记 - 第三百五十四阶段 - 4.4.2.352全局变量的作用域-352 -2025.12.21
- 第三届全国技能大赛上海市选拔赛(世赛选拔项目)网站技术项目试题与素材.zip
- 防火墙组网设计配置文件
- 417832817635033okx-android.apk
- Python编程入门基础教程:从零到一