| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 703 人关注过本帖
标题:这个程序怎么输出值,囧
只看楼主 加入收藏
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
结帖率:82.93%
收藏
 问题点数:0 回复次数:6 
这个程序怎么输出值,囧
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
   int *valiable_array=NULL;
   int size=0;
   char buf[256];
   int i;
   while(fgets(buf,256,stdin)!=NULL){
       size++;
       valiable_array=realloc(valiable_array,sizeof(int)*size);
       sscanf(buf,"%d",&valiable_array[size-1]);
   }
   for(i=0;i<size;i++){
       printf("valiable_array[%d]..%d\n",i,valiable_array[i]);
   }
   return 0;
}
搜索更多相关主题的帖子: include 
2013-08-03 13:25
pkwangxinjun
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:45
专家分:170
注 册:2010-8-29
收藏
得分:0 
文件流stdin在哪里打开的?
2013-08-03 19:29
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
valiable_array=realloc(valiable_array,sizeof(int)*size);

楼主不感觉这句有点问题?

另外,回2楼:

stdin还得打开??标准输入目测不用吧。。

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-08-03 22:30
XiaoXiao_Ren
Rank: 3Rank: 3
来 自:西安
等 级:论坛游侠
威 望:1
帖 子:80
专家分:198
注 册:2013-7-17
收藏
得分:0 
回复 楼主 abc594986308
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
   int *valiable_array=NULL;  //这里的指针也并未分配所指向的存储空间
   int size=0;
   char buf[256];
   int i;
   while(fgets(buf,256,stdin)!=NULL){  
//这里只有从标准输入错误,才会返回NULL,但是标准输入怎么才能出错呢???不出错,while就不会结束。
//或许同2楼所说的打开标准输入流,读文件结束时,会返回NULL
       size++;
       valiable_array=realloc(valiable_array,sizeof(int)*size);
//这个函数使用有问题,因为valiable_array并未分配存储空间
//这里你可以保证输入的是一个int型吗,如果我输入字符串 “abcdefg”,那么处理就出错了。
       sscanf(buf,"%d",&valiable_array[size-1]);
   }
   for(i=0;i<size;i++){
       printf("valiable_array[%d]..%d\n",i,valiable_array[i]);
   }
   return 0;
}

否极泰来
2013-08-03 22:56
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
收藏
得分:0 
回复 4楼 XiaoXiao_Ren
书上的源程序,错误可以这么多?还是图灵出版,看来我得换个出版社了,擦~~
2013-08-14 21:34
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9007
专家分:53942
注 册:2011-1-18
收藏
得分:0 
以下是引用abc594986308在2013-8-14 21:34:47的发言:

书上的源程序,错误可以这么多?还是图灵出版,看来我得换个出版社了,擦~~

代码语法合乎标准,算法流程也没错,运行结果也正确。

题外话:不同平台/Shell的结束输入手段也不一样,这一点C/C++是不管的,如同C/C++不可能去规范你怎么开机关机一样。

以Linux为例,输入 1回车 2回车 3回车 ctrl+d回车
以Widnows为例,输入 1回车 2回车 3回车 ctrl+z回车
后,输出
valiable_array[0]..1
valiable_array[1]..2
valiable_array[2]..3
2013-08-15 08:39
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
收藏
得分:0 
回复 6楼 rjsp
谢谢!
2013-08-15 13:03
快速回复:这个程序怎么输出值,囧
数据加载中...
 
   



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

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