| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 961 人关注过本帖
标题:为什么定义257的数组.长度却有300多??
只看楼主 加入收藏
高宽宏
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-10-12
结帖率:100%
收藏
 问题点数:0 回复次数:5 
为什么定义257的数组.长度却有300多??
#include <fstream.h>
char a[257];
int out(char a[]){
  int n=strlen(a);
   for(int i=0;i<n;i++)
   cout<<a[i];
   cout<<endl;
   cout<<n<<endl;
   return n;}
void main()
  {int i=0;
    fstream ftemp;
    ftemp.open("cffx.txt",ios::in);
    while(a[i]!=EOF&&i<500) {
    ftemp.get(a[i]);
   i++;}
   out(a);}
搜索更多相关主题的帖子: 定义 长度 
2008-10-16 14:07
守鹤
Rank: 4
来 自:山東臨沂
等 级:贵宾
威 望:12
帖 子:337
专家分:0
注 册:2008-6-20
收藏
得分:0 
while(a[i]!=EOF&&i<500)
若文件中的字符个数>257;
while 语句中的表达式却是成立的,
将会继续执行。导致字符数组越界。

多少个日日夜夜想起你,只希望有缘再次相见
2008-10-16 14:44
高宽宏
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-10-12
收藏
得分:0 
那为什么把数组定义在主函数里却要1000呢?
2008-10-16 18:33
高宽宏
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-10-12
收藏
得分:0 
各位大虾们发表下意见啊~~
我就是不知道怎么会事~~
2008-10-17 13:09
anthony634
Rank: 6Rank: 6
来 自:西南交大
等 级:贵宾
威 望:24
帖 子:653
专家分:10
注 册:2006-6-8
收藏
得分:0 
a[变量]:运行期确定值,编译期间无法检查
a[常量]:编译期确定值,编译器能检查错误
2008-10-17 13:32
高宽宏
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2008-10-12
收藏
得分:0 
有点启示.但不明白..
能说明白点么??
谢..
2008-10-17 22:53
快速回复:为什么定义257的数组.长度却有300多??
数据加载中...
 
   



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

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