OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4538|回复: 2

一个数组定义的小问题

[复制链接]

23

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2013-12-8
在线时间
0 小时
发表于 2014-4-21 11:13:46 | 显示全部楼层 |阅读模式
u8 SPI_FLASH_BUF[4096];
void SPI_Flash_Write(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite)  
这是原子SPI FLASH实验的最终写数据子函数程序,问题是这样的,我把这个 u8 SPI_FLASH_BUF[4096] 数组定义在这个函数体内,因为我觉得这应该是局部的,但这样编译器会报错,是不是数组不能在子函数体内定义啊??
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

80

主题

931

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3348
金钱
3348
注册时间
2013-5-28
在线时间
468 小时
发表于 2014-4-21 11:36:37 | 显示全部楼层
要写在程序开头,比如:
void SPI_Flash_Write(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite) 
{
      u8 SPI_FLASH_BUF[4096];
       ......
}
上面是对的,下面是错的
void SPI_Flash_Write(u8* pBuffer,u32 WriteAddr,u16 NumByteToWrite) 
{
      ...... 
      u8 SPI_FLASH_BUF[4096];
      ...... 
}

还有就是是不是存在溢出
回复 支持 反对

使用道具 举报

80

主题

931

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3348
金钱
3348
注册时间
2013-5-28
在线时间
468 小时
发表于 2014-4-21 11:37:35 | 显示全部楼层
还要注意,看别的地方有没有声明存在个外部SPI_FLASH_BUF
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-10 03:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表