无人机 实时数据传输对地的数据传输 建立什么模型

怎么实现WIN32控制台程序在循环中接收键盘方向键_c++吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:270,927贴子:
怎么实现WIN32控制台程序在循环中接收键盘方向键收藏
写了一个字符版的贪吃蛇,都写好了,就是不知道怎么在循环中读取方向键。从网上找了一些资料,说用键盘钩子,但是看来看去都是一篇文章,写的对新手来说比较生涩。API刚入门,但是钩子这一块还没接触。请大神指点。
上海张学友、王菲演唱会一站式购票!票品安全且真票!立即订购!
GetAsyncKeyState(键盘代码)然后加个sleep()函数
if kbhitgetch
你永远不会知道这句话的真正含义
这世上很多事情都是令人费解的,大家眼中的天作之合,突然就分道扬镳了,一开始完全不对盘的冤家,又出乎意料的走到了一起。想象的,遇到的,爱上的,和最后结婚的,也许都是不同的人。爱情这种事,也许冥冥之中自有安排,但只要努力去爱了,去用心的经营了,最后的结果如何,那就随缘好了。
我之前也因为这个问题困惑了好久
还是找到了办法
楼主可以参考一下在读取方向键时 需要使用两次_getch()
_getach()函数在conio.h文件中第一次判定是否为0xE0 或
0如果是,就读取第二个值
其值意义如下:enum Direction{ UP=72, DOWN=80, LEFT=75, RIGHT=77 };这是我为了方便而定义的枚举类型。以下是实现输入部分的函数
具体要做什么在case标签后添加int get(){int c = _getch();
if (c ==0xE0 || c == 0 )
c = _getch();
switch (c)
case DOWN:
case LEFT:
case RIGHT:break;
}return 0;}我们可以在另一个函数中调用get()while (!flag)
while (!_kbhit())
//在此处添加蛇的移动函数Sleep(1000);
// 蛇移动的间歇
}_kbhit()检测缓冲区是否有等待输入的字符 如果有 则返回1 则终止蛇移动的循环
调用get()获取输入 具体代码需要你根据实际情况来修改。希望对你有帮助还有楼上大水笔
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或1602人阅读
VC开发工具(13)
计算机网络(9)
//本工程还需链接一个库文件
//解决方案一:程序代码中加入#pragma comment(lib, &Ws2_32.lib&)
//解决方案二:在project\setting\link 中object/library modules加入 ws2_32.lib
#pragma comment(lib, &Ws2_32.lib&)
#include &Winsock2.h&
#include &stdio.h&
void main()
WORD wVersionR
WSADATA wsaD
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
if ( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1 ) {
/* Tell the user that we could not find a usable */
/* WinSock DLL.
WSACleanup( );
SOCKET sockRrv=socket(AF_INET,SOCK_DGRAM,0);
SOCKADDR_IN addrS
addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
addrSrv.sin_port=htons(6000);
addrSrv.sin_family=AF_INET;
bind(sockRrv,(SOCKADDR *)&addrSrv,sizeof(sockaddr));
//listen(sockRrv,5);
char recvBuffer[100];
char sendBuffer[100];
char tempBuffer[100];
SOCKADDR_IN addrC
int len=sizeof(sockaddr);
recvfrom(sockRrv,recvBuffer,100,0,(sockaddr*)&addrClient,&len);
if('q'==recvBuffer[0])
sendto(sockRrv,&q&,strlen(&q&)+1,0,(sockaddr*)&addrClient,len);
printf(&Chat end!\n&);
sprintf(tempBuffer,&%s say:%s&,inet_ntoa(addrClient.sin_addr),recvBuffer);
printf(&%s\n&,tempBuffer);
printf(&Please input data:\n&);
gets(sendBuffer);
sendto(sockRrv,sendBuffer,strlen(sendBuffer)+1,0,(sockaddr*)&addrClient,len);
closesocket(sockRrv);
WSACleanup();
//本工程还需链接一个库文件
//解决方案一:程序代码中加入#pragma comment(lib, &Ws2_32.lib&)
//解决方案二:在project\setting\link 中object/library modules加入 ws2_32.lib
#pragma comment(lib, &Ws2_32.lib&)
#include &Winsock2.h&
#include &stdio.h&
void main()
WORD wVersionR
WSADATA wsaD
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 ) {
if ( LOBYTE( wsaData.wVersion ) != 1 ||
HIBYTE( wsaData.wVersion ) != 1 ) {
/* Tell the user that we could not find a usable */
/* WinSock DLL.
WSACleanup( );
SOCKET sockRrv=socket(AF_INET,SOCK_DGRAM,0);
SOCKADDR_IN addrS
addrSrv.sin_addr.S_un.S_addr=inet_addr(&127.0.0.1&);
addrSrv.sin_port=htons(6000);
addrSrv.sin_family=AF_INET;
char recvBuffer[100];
char sendBuffer[100];
char tempBuffer[100];
//SOCKADDR_IN addrC
int len=sizeof(sockaddr);
printf(&please input data:\n&);
gets(sendBuffer);
sendto(sockRrv,sendBuffer,strlen(sendBuffer)+1,0,(sockaddr*)&addrSrv,len);
recvfrom(sockRrv,recvBuffer,100,0,(sockaddr*)&addrSrv,&len);
if('q'==recvBuffer[0])
sendto(sockRrv,&q&,strlen(&q&)+1,0,(sockaddr*)&addrSrv,len);
printf(&Chat end!\n&);
sprintf(tempBuffer,&%s say:%s&,inet_ntoa(addrSrv.sin_addr),recvBuffer);
printf(&%s\n&,tempBuffer);
closesocket(sockRrv);
WSACleanup();
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:86733次
积分:1119
积分:1119
排名:千里之外
转载:95篇
(3)(1)(2)(2)(1)(10)(1)(9)(9)(28)(23)(10)本帖子已过去太久远了,不再提供回复功能。有没有封装好的API或者库来实现基于命令行的控制台程序?
我要写一个控制台下运行的程序,需要实现简单的用户交互,有没有现成实现的框架、封装好的API、开源库使用。
编译linux内核时的 make menuconfig这种就挺好用的,但是好像是用bash脚本实现的。我想用C语言实现。哪位兄台有高见呢?
构建Linux文本界面应用程序的需要Ncurses库支持:
http://en.wikipedia.org/wiki/Ncurses
http://www.gnu.org/software/ncurses/ncurses.html
http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/intro.html
任务管理器htop
文本编辑器nano
浏览器lynx
防火墙配置工具system-config-firewall-tui
网络配置工具system-config-network-tui
Debian软件安装工具tasksel
Debian软件管理工具aptitude
当然还有么么棒的readline.
比如PHP在configure时加入--with-readline,CLI下则支持,这时输入PHP代码回车即可执行.
--with-readline依赖开发包libreadline-dev:
sudo apt-get install libreadline-dev
找到一个ncurses,还不知道咋用
楼上说的好,我已经找到两个比较好用的了,正在衡量
cursesplusplus-0.1.tar.gz
ndk++-0.0.1alpha4.tar.bz2

我要回帖

更多关于 无人机 实时数据传输 的文章

 

随机推荐