当前位置: 首页 > news >正文

北京网站建设工作室哪家好想做网站的公司

北京网站建设工作室哪家好,想做网站的公司,wordpress控制仪,荼叶公司网站模板2023年8月22日,周二下午 昨天花了一个下午和晚上来制作的, 实现了一些基本的功能, 但由于代码只有130行,所以存在很多不足之处 GitHub:GitHub - JuLongZhiLu/JuLongEditor: C/C小项目,使用Windows控制台…

2023年8月22日,周二下午

昨天花了一个下午和晚上来制作的,

实现了一些基本的功能,

但由于代码只有130行,所以存在很多不足之处


GitHub:GitHub - JuLongZhiLu/JuLongEditor: C/C++小项目,使用Windows控制台API来制作一个简单的文本编辑器,只有130行代码


#include <windows.h>
#include <conio.h>
using namespace std;//设置编辑器的能容纳的文本大小,最多10行80列
const int MAX_ROWS = 10;
const int MAX_COLS = 80;CHAR_INFO buffer[MAX_ROWS][MAX_COLS];//二维字符数组,用来构成文本
COORD cursorPos;//专门坐标位置的数据结构
CONSOLE_SCREEN_BUFFER_INFO csbi;//控制台屏幕缓冲区信息//初始化二维字符数组
void initBuffer() {for (int i = 0; i < MAX_ROWS; i++) {for (int j = 0; j < MAX_COLS; j++) {buffer[i][j].Char.AsciiChar = ' ';buffer[i][j].Attributes = FOREGROUND_BLUE;}}
}//初始化坐标数据结构
void initCursor() {cursorPos.X = 0;cursorPos.Y = 0;
}//把构成文本的二维数组打印到控制台
void drawBuffer(HANDLE console) {SMALL_RECT rect;rect.Top = 0;rect.Left = 0;rect.Bottom = MAX_ROWS - 1;rect.Right = MAX_COLS - 1;WriteConsoleOutputA(console, (CHAR_INFO*)buffer, { MAX_COLS, MAX_ROWS }, { 0, 0 }, &rect);
}//处理键盘按键
void ProcessKeys(int key, HANDLE console) {if (key == 0 || key == 224) {  //如果是方向键和删除键key = _getch();switch (key) {case 72: // 上if (cursorPos.Y != 0)cursorPos.Y--;SetConsoleCursorPosition(console, cursorPos);//移动光标到指定位置break;case 80: // 下cursorPos.Y++;SetConsoleCursorPosition(console, cursorPos);//移动光标到指定位置break;case 75: // 左if (cursorPos.X != 0)cursorPos.X--;if (cursorPos.Y != 0 && cursorPos.X == 0)cursorPos.Y--;SetConsoleCursorPosition(console, cursorPos);break;case 77: // 右if (cursorPos.X != MAX_COLS)//如果一行的字符数没超过最大列数,那么光标就右移一位cursorPos.X++;else{cursorPos.X = 0;//如果超过了,就换行cursorPos.Y++;}SetConsoleCursorPosition(console, cursorPos);break;case 83: //删除键buffer[cursorPos.Y][cursorPos.X - 1].Char.AsciiChar = ' ';buffer[cursorPos.Y][cursorPos.X - 1].Attributes = FOREGROUND_BLUE;if (cursorPos.X != 0)cursorPos.X--;if (cursorPos.Y != 0 && cursorPos.X == 0)cursorPos.Y--;SetConsoleCursorPosition(console, cursorPos);drawBuffer(console);break;}}else if (key == 13) {//如果是换行键cursorPos.X = 0;cursorPos.Y++;SetConsoleCursorPosition(console, cursorPos);	//在输出设备上定位光标}else if (key == 8) {  // 如果是回退键(Backspace键)buffer[cursorPos.Y][cursorPos.X - 1].Char.AsciiChar = ' ';buffer[cursorPos.Y][cursorPos.X - 1].Attributes = FOREGROUND_BLUE;if (cursorPos.X != 0)cursorPos.X--;if (cursorPos.Y != 0 && cursorPos.X == 0)cursorPos.Y--;SetConsoleCursorPosition(console, cursorPos);drawBuffer(console);}else {//如果是输入文本buffer[cursorPos.Y][cursorPos.X].Char.AsciiChar = (char)key;buffer[cursorPos.Y][cursorPos.X].Attributes = FOREGROUND_BLUE;drawBuffer(console);cursorPos.X++;SetConsoleCursorPosition(console, cursorPos);drawBuffer(console);}
}void input(HANDLE console) {while (true){GetConsoleScreenBufferInfo(console, &csbi);	//获取屏幕缓冲的光标位置,然后把当前光标位置赋给COORDcursorPos.X = csbi.dwCursorPosition.X;			//得到坐标x的值cursorPos.Y = csbi.dwCursorPosition.Y;			//y值if (_kbhit()) {int key = _getch();ProcessKeys(key, console);}}
}int main() {initBuffer();initCursor();HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE);input(console);
}

http://www.yayakq.cn/news/73255/

相关文章:

  • 网站版权该怎么做呢有没有做吉祥物的网站
  • 网站推广与营销知识wordpress远程 媒体库
  • 网站红色搭配用自己的电脑做服务器搭建网站
  • php 茶叶网站建设wordpress发邮件插件
  • 营销型网站建设实训报告rss wordpress
  • 怎么做网站前台上海搬家公司哪家便宜
  • 三亚网站建设济南网络推广公司哪家好
  • 鹤壁 网站建设网站地图wordpress
  • 北京网站建设方面常州网站关键词推广
  • 科技公司网站设计公司提高自己的网站
  • 做排名的网站泰州模板建站
  • 简单的网站构建的基本流程备案名称和网站名称
  • 织梦云建站系统3合一网站怎么做
  • 苏州市规划建设局网站wordpress 缓存 收录
  • 来几个好看的网站网站建设报价word文档
  • 山西省建设厅执业资格注册中心网站网站的推广平台
  • 许昌定制网站建设代理山东饰品行业网站制作
  • 昆明企业自助建站系统浙江省信息港成绩查询
  • 网站开发注册流程以及收费网站维护 静态页面
  • 广东做网站哪家公司好免费小程序制作平台
  • c 能做网站唐山彩钢中企动力提供网站建设
  • 怎么做资源网站seo网站建设及扩词
  • 平面设计类网站网站制作一般哪家好
  • 哈尔滨建设公司网站那方面 搜索网站
  • 网站建设目的和功能定位网站如果建设
  • 什么是网站建设方案wordpress怎样对接dz
  • 自己怎么在电脑上做网站如何在阿里云上做网站备案
  • 金融投资网站模板安卓网站开发视频
  • 大型网站制作费用表宝安网站改版
  • 网站建设配置网络策划营销