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

抽奖网站建设做网站练手项目

抽奖网站建设,做网站练手项目,互联网运营平台,全球搜索引擎大全前言#xff1a; Windows这个多作业系统除了协调应⽤程序的执⾏、分配内存、管理资源之外#xff0c;它同时也是⼀个很⼤的服务中⼼#xff0c;调⽤这个服务中⼼的各种服务#xff08;每⼀种服务就是⼀个函数#xff09;#xff0c;可以帮应⽤程式达到开启视窗、描绘图形…前言 Windows这个多作业系统除了协调应⽤程序的执⾏、分配内存、管理资源之外它同时也是⼀个很⼤的服务中⼼调⽤这个服务中⼼的各种服务每⼀种服务就是⼀个函数可以帮应⽤程式达到开启视窗、描绘图形、使⽤周边设备等⽬的由于这些函数服务的对象是应⽤程序(Application)所以便称之为ApplicationProgrammingInterface简称API函数。 WIN32API也就是MicrosoftWindows32位平台的应⽤程序编程接⼝。 控制台程序 什么是控制台程序 平常我们运⾏起来的⿊框程序其实就是控制台程序。 修改设置控制台程序的名称 在官方Windows console(控制台)中可以查阅相关控制台操作的相关函数 返回值 该函数的返回值是BOOL类型也就是成功的话返回true(1)失败的话返回false(0) 参数 这里参数就是需要传入字符串指针。 注意 宽字符的讲解 这里的字符串由于可以是任意的符号、数字、汉字、英文、等等特殊符号但是由于ASCALL表中一共是127个字符一个char类型是1个字节8个比特位最高位为0所以最大可容纳127个字符 但是由于国家不同每个国家有自己的语言体系比如中国大约有10万汉字char类型根本不够用就算是把最高位也用起来char类型也只能包含256个字符也是不够用的 所以国际商议出宽字符也就是一个字符占2个字节也就是16个比特位但是还是不够但是这16个比特位足描述常用字符。 于是字符就分为了两种 1、窄字符 类型char类型 大小1个字节 符合ASCALL表 2、宽字符 类型wchar_t 大小2个字节 在定义字符串时同时也是两种形式 窄字符用 包裹。 宽字符用 L 包裹。 在C中就偶两套函数处理两种字符串 比如strlen计算窄字符串的大小。            wcslen计算宽字符串的大小 当然微软将这两种字符进行了统一就有了TCAHR类型就有了_T()这样的字符串。 通过条件编译通过_UNICODE和UNICODE宏控制实际使用的字符集。 当没有定义_UNICODE宏时TCHAR char_tcslen strlen 当定义了_UNICODE宏时TCHAR wchar_t _tcslen wcslen 在使用SetConsoleTitle函数的时候参数传的是哪种类型呢 先用常量字符型试试看 int main() {SetConsoleTitle(cccc);return 0; } 结果报错 这里的LPCWSTR是什么呢 通过查阅 LPCSTR是Win32和VC所使用的一种字符串数据类型。LPCSTR被定义成是一个指向以\0结尾的常量字符的指针。 LPWSTR是wchar_t字符串。 LPCWSTR是一个指向unicode编码字符串的32位指针所指向字符串是wchar型而不是char型。 LPSTR和LPWSTR是Win32和VC所使用的一种字符串数据类型。LPSTR被定义成是一个指向以NULL(‘\0’)结尾的32位ANSI字符数组指针而LPWSTR是一个指向以NULL结尾的64位双字节字符数组指针 也就是SetConsoleTitle函数必须使用宽字符也就是wchar_t类型。 int main() {SetConsoleTitle(Lcccc);return 0; } 注解 也就是我们控制台标题还有一种旧方法就是用title 的方式命名 可以在编译器中输入 #includewindows.h int main() {/*SetConsoleTitle(Lcccc!!);*/system(title cccc);return 0; } 控制台屏幕上的坐标COORD 想要控制光标的位置就需要用坐标来表示微软提供了COORD结构也就是坐标的结构体。 一个是类型COORD的结构体一个是PCCOOED的指针。 在我们使用的时候只需要定义一个结构体变量例如 #includewindows.h int main() {COORD pc { 10,20 };printf(ccc);return 0; } GetStdHandle操作柄 函数: 该函数是获取标准设备的句柄也就是获取操作控制台的外部设备信息我们使用键盘操作控制台使得我们对控制台有使用权限。 返回值是HANDLE类型的结构体变量。 例如 #includewindows.h int main() {HANDLE hOutput NULL;//获取标准输出的句柄(⽤来标识不同设备的数值)hOutput GetStdHandle(STD_OUTPUT_HANDLE);return 0; } GetConsoleCursorInfo (获取光标)函数: 检索有关指定控制台屏幕缓冲区的游标大小和可见性的信息. 参数有两个 1、操作柄对应的返回值。 2、光标信息的指针。 #includewindows.h int main() {HANDLE hOutput NULL;//获取标准输出的句柄(⽤来标识不同设备的数值)hOutput GetStdHandle(STD_OUTPUT_HANDLE);CONSOLE_CURSOR_INFO CursorInfo;//光标的相关信息包括光标的大小光标的可见性GetConsoleCursorInfo(hOutput,hOutput);//获取控制台光标信息return 0; } CONSOLE_CURSOR_INFO光标信息结构体 想要对光标进行修改必须了解光标对应的函数里面都有哪些内容。 dwSize 由游标填充的字符单元的百分比。 该值介于 1 到 100 之间。 游标外观各不相同范围从完全填充单元到显示为单元底部的横线。 bVisible 游标的可见性。 如果游标可见则此成员为 TRUE。 SetConsoleCursorInfo (设置光标)函数 传入的参数和SetConsoleCursorInfo传入的参数是一样的。 int main() {HANDLE hOutput NULL;//获取标准输出的句柄(⽤来标识不同设备的数值)hOutput GetStdHandle(STD_OUTPUT_HANDLE);CONSOLE_CURSOR_INFO CursorInfo;//光标的相关信息包括光标的大小光标的可见性GetConsoleCursorInfo(hOutput, CursorInfo);//获取控制台光标信息CursorInfo.bVisible FALSE;//修改信息SetConsoleCursorInfo(hOutput, CursorInfo);//设置信息return 0; } 光标消失了。 SetConsoleCursorPosition设置光标位置函数 配合COORD函数使用 int main() {HANDLE hOutput NULL;//获取标准输出的句柄(⽤来标识不同设备的数值)hOutput GetStdHandle(STD_OUTPUT_HANDLE);CONSOLE_CURSOR_INFO CursorInfo;//光标的相关信息包括光标的大小光标的可见性GetConsoleCursorInfo(hOutput, CursorInfo);//获取控制台光标信息CursorInfo.dwSize 100;SetConsoleCursorInfo(hOutput, CursorInfo);//设置信息COORD pos { 10,20 };SetConsoleCursorPosition(hOutput,pos);//设置光标位置int ch getchar();//获取输入putchar(ch);//输出return 0; } 效果如下 GetAsyncKeyState获取键盘按键函数 获取按键情况GetAsyncKeyState的函数原型如下 SHORT GetAsyncKeyState(  int vKey); 将键盘上每个键的虚拟键值传递给函数函数通过返回值来分辨按键的状态。 GetAsyncKeyState 的返回值是short类型在上⼀次调⽤ GetAsyncKeyState 函数后 如果返回的16位的short数据中最⾼位是1说明按键的状态是按下如果最⾼是0说明按键的状态是抬起 如果最低位被置为1则说明该按键被按过否则为0。 如果我们要判断⼀个键是否被按过可以检测GetAsyncKeyState返回值的最低值是否为1. 可以写出一个检测有没有被按过的函数 每个按键对应的值为 #define KEY_PRESS(VK) ( (GetAsyncKeyState(VK) 0x1) ? 1 : 0 ) int main() {while (1){if (KEY_PRESS(0x30)){printf(0\n);}else if (KEY_PRESS(0x31)){printf(1\n);}else if (KEY_PRESS(0x32)){printf(2\n);}else if (KEY_PRESS(0x33)){printf(3\n);}else if (KEY_PRESS(0x34)){printf(4\n);}else if (KEY_PRESS(0x35)){printf(5\n);}else if (KEY_PRESS(0x36)){printf(6\n);}else if (KEY_PRESS(0x37)){printf(7\n);}else if (KEY_PRESS(0x38)){printf(8\n);}else if (KEY_PRESS(0x39)){printf(9\n);}}return 0; } 可在电脑上监视0~9按键是否备被按过
http://www.hkea.cn/news/14374262/

相关文章:

  • 带动画的网站模板网站横幅广告代码
  • 毕业设计餐饮网站建设网站的搭建流程
  • 建设监理工程公司网站钢结构网站
  • 做爰网站视屏做化妆品注册和注册的网站吗
  • 搜索引擎网站推广可以自己做吗徐州城乡建设招投标网站
  • 免费做网站可以一直用吗怎么破解网站后台
  • 网站备案为什么 没有批复文件WordPress清爽主题
  • wordpress企业站模板罗湖住房和建设局网站
  • 滦平住房和城乡建设厅网站网站建设维护公司资质
  • 西安做网站的公司在线图片制作工具
  • 有网址和关键词就能刷网站排名网络服务设备有哪些
  • 济南网站假设推广网页网站自做全搞定
  • 深圳专业营销网站制作建筑设计公司logo
  • 优秀毕业设计网站设计网络营销具有哪些优势和吸引力
  • 优秀的设计网站有哪些内容珠海网站建设防
  • 成都网站建设桔子科技html5软件安装视频
  • 江西建设职业技术学院招生信息网站wordpress图片无法显示
  • asp.net 网站发布乱码问题wordpress开发+文档下载
  • wordpress给公司建站wordpress 专栏页面
  • 绵阳网站建设策划内容wordpress ftp wp-config.php
  • 电子商务网站建设与运营方向上海网站建设百度推广公司哪家好
  • 厦门人才网个人登录国内好的seo
  • 中山h5网站建设如何利用模板做网站
  • 做银行流水网站ps做特效哪个网站好
  • 广告公司简介模板100字页面优化的方法有哪些
  • 企业解决方案参考网站小说网站用什么虚拟主机
  • 海南网站建设推广同步网站内容怎么做
  • 网站建设的优势是什么意思现在电商做的设计用的什么网站
  • 专业做网站建设制作服务网站建设策划书封面
  • 网站优化比较好的公司个人短信接口wordpress