如何用C语言实现清屏(100分)

kawasaki 2000-12-10 05:34:00
1、如何清除字符方式下的屏幕,最好用C库的函数。
2、另外,如何使屏幕静止不动,例如:
char *string;
printf("input:");
scanf("%s",string);
printf("output:\n");
在输入字符串回车后,屏幕不会向上移动,input:还是显示在原来的坐标上,请问如何实现?
...全文
5339 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
overmind 2001-01-01
  • 打赏
  • 举报
回复 1
include <stdlib.h>

system("cls");
rida 2000-12-23
  • 打赏
  • 举报
回复
请问在c++中有没有清屏的函数?
laxin 2000-12-19
  • 打赏
  • 举报
回复
在 UNIX 中 , 清 屏 可 以 用 system("clear");
在 指 定 位 置 输 入 可 用 wgetstr(x,y,str);
具 体 使 用 方 法 可 用 man 查 , 如 man wgetch
hyqryq 2000-12-19
  • 打赏
  • 举报
回复
一个简单的办法:
先记下所在行的位置
用函数bioskey得到输入,若输入为回车,
则goto到此行的位置!

例:
#define ENTER 27 /*好像是27,我记不清了.*/
while(bioskey(1)==ENTER)
goto(x,y);
Winsky 2000-12-19
  • 打赏
  • 举报
回复
1、你可以使用printf或者puts等函数往屏幕上输出25个换行符
比如:int count;
 for(count = 0; count < 25; count++)
  puts("\n");
2、你可以试试clrscr(),使用时要#include <conio.h>
3、你可以直接用int86函数调用bios的视频中断。
xqf 2000-12-19
  • 打赏
  • 举报
回复
直接用函数cls便可以,我做过!
hotyei 2000-12-17
  • 打赏
  • 举报
回复
清屏:
textattr(0x1f);
clrscr(); //蓝底白色,很漂亮的

不换行:
最好还是用直接写屏吧,速度会快很多。
风中老长 2000-12-16
  • 打赏
  • 举报
回复
清屏:
system("cls");
你可以使用keybios()这个函数,但能麻烦一些
prefix 2000-12-16
  • 打赏
  • 举报
回复
clrscr();可以清屏。
想不换行我想你可以用moveto(或者movetoxy,忘了是哪个了,或者是与之相似的一个,自己找找看),可以移动到指定行。
hushui 2000-12-16
  • 打赏
  • 举报
回复
linux、unix可以用ioctl()控制终端的输出效果。有比较复杂的参数,具体查一下资料
print("\r");可以返回本行的开头
满桌烟灰 2000-12-11
  • 打赏
  • 举报
回复
gotoxy(1,1);
onion 2000-12-11
  • 打赏
  • 举报
回复
查标准C手册吧。待我查了再说。
kawasaki 2000-12-11
  • 打赏
  • 举报
回复
很急,希望大家帮助
kawasaki 2000-12-10
  • 打赏
  • 举报
回复
程序要在linux、unix、winows下通用,请给出具体解决方法,谢谢
cxiaobao 2000-12-10
  • 打赏
  • 举报
回复
1:
TurboC 中有清屏函数clrscr()。
2:
使用printf好像是不行的,用bios中断和直接写屏吧,两者都可以实现。
应该是bios中断10。如果直接写屏的话好象内存地址是0xb8000(彩显,单显是0xb0000).
去查查书吧,我也记不请了。

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧