萌萌妈妈 发表于 2015-1-16 12:40:09

给大家带来一个基于串口终真个菜单显现函数

vim除非你打算真正的学好linux,或者说打算长久时间学习他,而且肯花大量时间vim,否则,最好别碰
//函数会主动主力用户输出信息,并前往按键码给挪用它的函数
  /*menu显现函数*/
  intmenu(constchar**menu,intstart_row)
  {
  registerinti;
  staticintflag=1;
  intitem_count;
  char*title;
  intkey_val;
  intpointer=0;
  charitem;
  if(flag)
  {
  flag=0;
  pointer=0;
  }
  /*盘算菜单项个数*/
  item_count=0;
  while(1)
  {
  if(menu!=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)*sizeof(char)+40*sizeof(char));
  if(title==NULL)
  {
  perror("malloc");
  }
  sprintf(title,"33);
  puts(title);
  free(title);
  /*显现menu*/
  for(i=1;i<item_count;i++)
  {
  if(i==pointer+2)
  {
  charbuff;
  sprintf(buff,"33);
  puts(buff);
  }
  else
  {
  puts(menu);
  }
  }//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

熟读写基础知识,学得会不如学得牢。

谁可相欹 发表于 2015-2-8 07:49:40

Linux高手更具有鼓励新手的文化精神。如何在Linux社区获得帮助,需要说明的是你要有周全的思考,准备好你的问题,不要草率的发问。

第二个灵魂 发表于 2015-2-25 02:20:08

让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?

蒙在股里 发表于 2015-3-7 16:20:57

Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。

灵魂腐蚀 发表于 2015-3-15 09:45:24

让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?

小女巫 发表于 2015-3-22 00:41:41

通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。?
页: [1]
查看完整版本: 给大家带来一个基于串口终真个菜单显现函数