仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 271|回复: 8
打印 上一主题 下一主题

[其他Linux] 给大家带来一个基于串口终真个菜单显现函数

[复制链接]
萌萌妈妈 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 12:40:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
vim除非你打算真正的学好linux,或者说打算长久时间学习他,而且肯花大量时间vim,否则,最好别碰
//函数会主动主力用户输出信息,并前往按键码给挪用它的函数
  /*menu显现函数*/
  intmenu(constchar**menu,intstart_row)
  {
  registerinti;
  staticintflag=1;
  intitem_count;
  char*title;
  intkey_val;
  intpointer=0;
  charitem[100];
  if(flag)
  {
  flag=0;
  pointer=0;
  }
  /*盘算菜单项个数*/
  item_count=0;
  while(1)
  {
  if(menu[item_count]!=NULL)
  {
  item_count++;
  }
  else
  {
  break;
  }
  }
  /*清空屏幕*/
  system("clear");
  /*进进menu轮回*/
  while(1)
  {
  /*显现粉饰头*/
  printf("

");
  puts("33[0;32;40muqq⌒rHaveAGoodDay!^_^’↑’-’w’,’↓’-’s’33[0m");
  puts("33[0;32;40m田田田t------------------------------------------------33[0m");
  /*显现题目*/
  for(i=0;i<start_row;i++)
  {
  printf("
");
  }
  title=(char*)malloc(strlen(menu[0])*sizeof(char)+40*sizeof(char));
  if(title==NULL)
  {
  perror("malloc");
  }
  sprintf(title,"33[0;31;44m%s33[0m",menu[0]);
  puts(title);
  free(title);
  /*显现menu*/
  for(i=1;i<item_count;i++)
  {
  if(i==pointer+2)
  {
  charbuff[200];
  sprintf(buff,"33[7;30;43m%s33[0m",menu[i]);
  puts(buff);
  }
  else
  {
  puts(menu[i]);
  }
  }//endfor
  /*猎取键盘信息,并处置*/
  tcflush(0,TCIFLUSH);//清空串口缓冲
  key_val=getch();
  switch(key_val)
  {
  case’q’:
  return-1;
  case’w’:
  if(pointer>0)
  {
  pointer--;
  }
  else
  {
  pointer=item_count-4;
  }
  system("clear");
  break;
  case’s’:
  pointer++;
  pointer%=(item_count-3);
  system("clear");
  break;
  caseKEY_ENTER:
  if(pointer==item_count-4)
  {
  pointer=-1;
  }
  returnpointer;
  default:
  if(isdigit(key_val))
  {
  if((key_val-’0’>=0)&&(key_val-’0’<=item_count-5))
  {
  pointer=key_val-’0’;//字符→数值
  returnpointer;
  }
  }
  /*清空屏幕*/
  system("clear");
  pointer=0;
  printf("key_default!Thekey_val:%d",key_val);
  }//endswitch(key_val)
  }//endwhile(1)
  }
</p>
安装和登录命令:login、shutdown、halt、reboot、mount、umount、chsh
柔情似水 该用户已被删除
沙发
发表于 2015-1-18 09:53:52 | 只看该作者
选择一些适于初学者的Linux社区。
透明 该用户已被删除
板凳
发表于 2015-1-25 10:27:30 来自手机 | 只看该作者
随着Linux技术的更加成熟、完善,其应用领域和市场份额继续快速增大。目前,其主要应用领域是服务器系统和嵌入式系统。然而,它的足迹已遍布各个行业,几乎无处不在。
再见西城 该用户已被删除
地板
发表于 2015-2-2 21:51:25 | 只看该作者
熟读写基础知识,学得会不如学得牢。
谁可相欹 该用户已被删除
5#
发表于 2015-2-8 07:49:40 | 只看该作者
Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-25 02:20:08 | 只看该作者
让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
蒙在股里 该用户已被删除
7#
发表于 2015-3-7 16:20:57 | 只看该作者
Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。
灵魂腐蚀 该用户已被删除
8#
发表于 2015-3-15 09:45:24 | 只看该作者
让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
小女巫 该用户已被删除
9#
发表于 2015-3-22 00:41:41 | 只看该作者
通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表