免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1777 | 回复: 16
打印 上一主题 下一主题

请看一段程序? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-10-08 19:26 |只看该作者 |倒序浏览
do{
         ..................
          .................
        if(i!=0)goto loop;
          else
                  {mvaddstr(12,23,"qqqq";break;}

  编译时为什么总提示:warning: end-of-loop code not reached
请高手指教,在线等候,急急急!!!

论坛徽章:
0
2 [报告]
发表于 2004-10-08 19:30 |只看该作者

请看一段程序?

把代码贴全点,这太少了,看不出来。。。

论坛徽章:
0
3 [报告]
发表于 2004-10-08 19:55 |只看该作者

请看一段程序?

那是说你的那个循环永远不会正常结束。

你用的什么环境? sco ? sun?

论坛徽章:
0
4 [报告]
发表于 2004-10-08 20:03 |只看该作者

请看一段程序?

我用的是: sco unix

论坛徽章:
0
5 [报告]
发表于 2004-10-08 20:05 |只看该作者

请看一段程序?

请版主给改一下好吗

论坛徽章:
0
6 [报告]
发表于 2004-10-08 20:21 |只看该作者

请看一段程序?

已给的代码少个}

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
7 [报告]
发表于 2004-10-08 21:23 |只看该作者

请看一段程序?

代码不全。提示的是说会死循环。看一下你的代码,估计是在循环体内i没有改变,永远不可能==0吧?

论坛徽章:
0
8 [报告]
发表于 2004-10-09 09:51 |只看该作者

请看一段程序?

是啊,你的代码少了一个}啊,如果不是楼主笔误的话,应该好好检讨一下自己!

论坛徽章:
0
9 [报告]
发表于 2004-10-09 12:27 |只看该作者

请看一段程序?

#include <curses.h>;
#include <malloc.h>;
#include <form.h>;
#include <stdio.h>;
#include <locale.h>;
struct cwmc{
char czh[12];
char cmc[30];
}cwmc1;
struct cwmc *tfp;
main()
{
FILE *fp; FIELD *field[3]; FORM *form;
int ch,ch1,i=0;
char *aczh,*acmc; char *bczh,*tczh;
if((tfp=(struct cwmc *) malloc(sizeof(struct cwmc)))==NULL)
{ printf("内存分配失败!\n";
exit(0);
}
if((fp=fopen("cwm01.dat","r")==NULL){
printf("文件打开失败!\n";
exit(0);
}
setlocale(LC_CTYPE,"";
initscr();
keypad(stdscr,TRUE);
meta(stdscr,TRUE);
field[0]=new_field(1,12,8,22,0,0);
field[1]=new_field(1,30,12,22,0,0);
field[2]=NULL;
field_opts_off(field[0],O_AUTOSKIP);
field_opts_off(field[1],O_AUTOSKIP);
form=new_form(field);
post_form(form);
refresh();
loop:
move(23,12); clrtoeol();
i=0;
mvprintw(3,30,"按学号查询";
move(4,01);
hline(ACS_HLINE,80);
mvprintw(8,10,"1.学 号:";
mvprintw(12,10,"2.姓 名:";
move(21,01);
hline(ACS_HLINE,80);
mvprintw(22,01,"帮助信息:";
mvprintw(23,01,"提示信息:";
mvprintw(22,12,"[ESC-退出]";
refresh();
move(8,20);
aczh=field_buffer(field[0],0);
set_field_back(field[0],A_REVERSE);
form_driver(form,REQ_OVL_MODE);
form_driver(form,REQ_VALIDATION);

while((ch=getch())!=27)
{ switch(ch)
{ case 10:
form_driver(form,REQ_NEXT_FIELD);
switch(i){
case(1):{ set_field_back(field[1],A_NORMAL);
mvaddstr(23,12,"确认要发送数据吗?[Y/N]");
mvaddch(23,35,'Y');
move(23,35);
ch1=getch();
switch(ch1)
case 'n':
case 'N':
goto loop;
case 'y':
case 'Y':
do{
fread(tfp,sizeof(struct cwmc),1,fp);
set_field_buffer(field[0],0,tfp->;czh);
tczh=field_buffer(field[0],0);
set_field_buffer(field[1],0,tfp->;cmc);
acmc=field_buffer(field[1],0);
if(tczh==aczh)break;
else
  mvaddstr(12,12,"qqqq");goto loop;
}while(1);
mvprintw(8,52,acmc);
move(8,20);set_field_back(field[0],A_REVERSE);
}
break;
}
set_field_back(field,A_NORMAL);
i++;
set_field_back(field,A_REVERSE);
switch(i){
case(2):{i=0;}
}
break;
case KEY_UP:
switch(i){
case(0):
i=1;}
i--;
set_field_back(field,A_REVERSE);
set_field_back(field[i+1],A_NORMAL);
form_driver(form,REQ_PREV_FIELD);
break;
case KEY_LEFT:
form_driver(form,REQ_PREV_CHAR);
break;
case KEY_RIGHT:
form_driver(form,REQ_NEXT_CHAR);
break;
case KEY_BACKSPACE:
form_driver(form,REQ_DEL_PREV);
break;
default:
form_driver(form,ch);
break;
}
}
unpost_form(form);
free_form(form);
free_field(field[0]);
free_field(field[1]);
free(tfp);
endwin();
return 0;
}

现把代码贴出来,请看看那段do{.......}while(1)循环怎么编译
通不过,怎么才能正常退出,请给改一下!

论坛徽章:
0
10 [报告]
发表于 2004-10-09 12:33 |只看该作者

请看一段程序?

do{
..................
.................
if(i!=0)goto loop;
else
{mvaddstr(12,23,"qqqq";break;}
}while(1);
编译时为什么总提示:warning: end-of-loop code not reached
请高手指教,在线等候,急急急!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP