C++在控制台下怎么实现字符移动?

Chendy1985 2008-07-28 07:07:56
我想在控制台下实现一个字符的移动
举个例子,就是在一行的左端有个*,每过一秒想右移动一格,这个怎么实现?

在这个实现的基础上,还想实现这个效果,在一行的最左和最右各有一个*和一个#,每过一秒它们交替向中间移动一格,最后相遇时*把#吃掉,就是#没有了,*还在。

各位大牛给说说吧,谢谢啦~~~~~
...全文
778 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
HelloDan 2008-07-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 Chendy1985 的帖子:]
我想在控制台下实现一个字符的移动
举个例子,就是在一行的左端有个*,每过一秒想右移动一格,这个怎么实现?

在这个实现的基础上,还想实现这个效果,在一行的最左和最右各有一个*和一个#,每过一秒它们交替向中间移动一格,最后相遇时*把#吃掉,就是#没有了,*还在。

各位大牛给说说吧,谢谢啦~~~~~
[/Quote]

像一楼那样的刷屏或者说置颜色的方法都行。
五号智能 2008-07-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 xiaoxiaochi 的回复:]
问3楼,怎样把屏幕定义为2维数组?
[/Quote]
只是一个比方,用一个二维数组来覆盖整个屏幕。
大写的池 2008-07-28
  • 打赏
  • 举报
回复
问3楼,怎样把屏幕定义为2维数组?
thankall 2008-07-28
  • 打赏
  • 举报
回复
清屏时会不会闪?
五号智能 2008-07-28
  • 打赏
  • 举报
回复
另一种方式,把屏幕定义为二维数组,移动字符(图形)在数组中的位置。清屏再刷新。
deerwin1986 2008-07-28
  • 打赏
  • 举报
回复
恩 一楼有道理 刷屏再重写
当然最直接的方法还是用汇编直接向显示缓冲写ASCii
缺点就是只能全屏才能看到~
机智的呆呆 2008-07-28
  • 打赏
  • 举报
回复 1
#include <iostream>
#include <windows.h>
using namespace std;

int main()
{
int i=0;
cout<<"*"<<endl;
while(1)
{
Sleep(1000);
system("cls");
cout.width(i++);
cout<<"*"<<endl;
}

}

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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