打印

C51指针问题

[复制链接]
1056|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gxgclg|  楼主 | 2012-1-31 22:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在学习指针过程碰到一个问题,请教大家:
  下面程序,单片机上电运行,第一次调用readRom()函数正常,第二次调用读取的数就不对了,也就是说while(1) 里第二个循环就不对了,第一个循环是正确的,第三次以后每次读出数字跟第二次是一样的,如果把指针*p换为全局的,也就是程序最前面定义,就正确了,把*p换成普通变量,也没问题的,请问这是为什么?
.....
.....
[code=C#][/code]
readRom()
{
unsigned char *p,i;
  for(i=0;i<8;i++)  

  {
  *p=readbyte(); //读取一个字节
  lcd_dis(*p); //显示到LCD


  }
}

main()
{
while(1)
{
readRom();
delayms(200); //延时一会
}}

相关帖子

沙发
sinadz| | 2012-1-31 22:07 | 只看该作者
unsigned char *p,i;
  for(i=0;i<8;i++)   
  {
  *p=readbyte(); //读取一个字节

P没有指定空间。。。

程序乱写到别的地方了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

177

主题

1653

帖子

1

粉丝