导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→help[jola]

 *第23703篇: help

  
楼 主:jola 2004年7月14日10:22
 help
main()
{
float temper[31];
float sum=0;
int num,day=0;
float *p;
p=temper;
do
{ print("enter temperature for day %d:",day++);
scanf("%f",p);
}
while(*(p++)>  0);
p=temper;
num=day-1;
for(day=0;day  <num;day++)
sum+=*(p++);
printf("average is %4.1f",sum/num);
}
这段程序编译时出现auto segment too large 是怎么回事?
  
2楼:jola 2004年7月14日10:41
 HELP
HELP !!!!!!!!!
  
3楼:dongshan 2004年7月14日12:24
 是不是这样?
你用的是什么型号的单片机?若内部RAM 仅128 单元,而又没有外部扩展的话,那RAM 可能不够!

  float temper[31];     -----124 bytes
float sum=0;             ------4  bytes
int num,day=0;          ----- 4 bytes
float *p;                    ------ 3 bytes

合计135字节!

  
4楼:lenglianxi 2004年7月16日14:37
 data区只有128byte
data区只有128byte, 你用了32个float,还有一些其他的变量,你叫它放到哪里?
如果你是用的52单片机,使用
   idta float temper[31];
或者将它们放到xdata区,如果你扩展了外部数据的话。
   xdta float temper[31];
  
5楼:jola 2004年7月20日09:45
 我明白了,谢谢大家!
我明白了,谢谢大家!very thank you!

>>>>>>对该主题发表你的看法

本主题贴数5,分页: [第1页]


[上一篇主题]:关于8019as驱动程序的疑问

[下一篇主题]:最新防雷过压保护必备元器件的专业供应