| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1392 人关注过本帖
标题:关于 EOF
取消只看楼主 加入收藏
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
结帖率:77.78%
收藏
已结贴  问题点数:5 回复次数:16 
关于 EOF
char input[40];
gets(input);
 while(*input!=EOF)
{


}
我用这种方法,当我键入ctrl+z时,为什么跳不出while循环?
我就是在某一行的开始cyrl+z的
2014-11-08 20:03
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 2 楼 zklhp
按了啊,退不出去啊
还有我忘了说明
我在while最后还有一句gets(input)
char input[40];
 gets(input);
 while(*input!=EOF)
 {

   gets(input);
 }
2014-11-08 22:09
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 4 楼 soulmate1023
多谢多谢,我也想知道我那个怎么错了,编译能通过,是语法错误,还是其他原因?拜谢!!!!
2014-11-08 22:26
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 5 楼 zklhp
麻烦了,还是很感谢
2014-11-08 22:26
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 7 楼 TonyDeng
我只是摘了出错的那部分贴上去,逻辑自认为比较清楚,可能方法上不是最简洁的,我已经用其他方法完成程序了,但我是想知道这样是怎么错了,是语法错误还是其他原因。多谢
2014-11-08 22:30
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 13 楼 wssy213
char input[40];
 while(gets(input)&&*input!=EOF)
 {


 }
可是如果把gets()移到while的小括号里面就可以啊
你那种解释我也看了,可是为什么这种情况就行?我没理解透?
2014-11-09 15:40
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 12 楼 TonyDeng
char input[40];
 while(gets(input)&&*input!=EOF)
 {


 }
可是如果把gets()移到while的小括号里面就可以啊
我看了几个你之前回答别人的帖子,那个什么库函数大全那本书很重要吗?我刚学c没多久,就是没事多学点东西。用不用现在就准备那本书。
还有你说专业版的软件更靠谱,我这种业余学的还有必要吗?
多谢指教
2014-11-09 16:08
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 16 楼 wssy213
我把题目和我的代码贴上,这是一本书上的题,
这是题目
设计并测试一函数,其功能是搜索由函数的第一个参数指定的字符串,在其中查找由函数的第二个参数指定的字符的第一次出现的位置(和strchr()的功能一样),使用循环语句为这个函数提供完整程序进行测试。
这是我写的
#include<stdio.h>
char *location(char *p,char ch);
int main(void)
{
 char input[40];
 char ch;
 //gets(input);//如果把while里面的gets()移到这里,为何不行,程序输入ctrl+z也不会跳出循环
while(gets(input)&&*input!=EOF)//
 {
printf("enter a character:");
 ch=getchar();
 getchar();//用于舍去输入ch后键入的回车,否则gets(input)会读那个回车
printf("%p\n",location(input,ch));
 //gets(input);
 }
 printf("bye\n");
 return 0;
}
char *location(char *p,char ch)
{
 while(p++!=*\0*)
 {
 if(*p==ch)
 return p;
 }
 return NULL;
}
2014-11-09 16:36
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 18 楼 wssy213
明白了,太感谢了,多谢多谢
2014-11-09 18:45
我FEI
Rank: 2
等 级:论坛游民
帖 子:87
专家分:27
注 册:2013-11-18
收藏
得分:0 
回复 19 楼 Adws
我们见过?????
2014-11-09 18:45
快速回复:关于 EOF
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013069 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved