首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

一个函数,<C和指针>里面的,有点不明白解决思路

2012-03-01 
一个函数,C和指针里面的,有点不明白intread_column_numbers(intcolumns[],intmax){intnum0intchwhile

一个函数,<C和指针>里面的,有点不明白
int   read_column_numbers(int   columns[],int   max)
{
int   num=0;
int   ch;
while(num <max   &&   scanf( "%d ",&columns[num])==1   &&   columns[num]> =0)
num+=1;
if(num%2   !=0){
puts( "last   column   number   is   not   paired. ");
                                    exit(EXIT_FAILURE);
}
while((ch=getchar())!=EOF   &&   ch   != '\n ')/*丢弃该行中包含最后一个数字的那部分内容*/

return   num;
}
这个函数是输入偶数个数字,然后通过负数作为结束,不明白的是带有注释那句,不知道有什么作用,就算没有了他,返回值都是一样.
即使输入负数后再输入其他都好象不会对数组columns有什么影响啊.

[解决办法]
while((ch=getchar())!=EOF && ch != '\n ') ;

把输入缓冲区里多余的东西给清理掉~

热点排行
Bad Request.