野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7926|回复: 3

求教大神keil调试问题

[复制链接]
发表于 2017-3-6 15:44:19 | 显示全部楼层 |阅读模式
我用keil写程序下载到板子上面,然后单步调试查看变量的值。main函数调用了一个返回值为结构体指针的子函数,返回值是错误的,但将这个子函数中的程序直接写在main函数中,可以得到正确的结果。请问这是什么问题呢?函数如下

Getdata* Read_datas(u16 year,u8 month,u8 day,u8* num)//Getdata为结构体类型
{

        Getdata* data;
        u8 w;
        u32 Add2;//开始读的地址
        u8 g=0;
        w=Num_of_data(year,month,day);//此函数得到结构体的大小
       Add2=Get_data_Addr();
        data=(Getdata *)malloc(w*sizeof(Getdata));

        while(g<w)
        {
          data[g]=Read_data(Add2);
                Add2-=SIZE_data;
                g++;
        }


       *num=w;
        return data;
}

回复

使用道具 举报

发表于 2017-3-6 15:47:14 | 显示全部楼层
正常能跑就好,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-6 21:49:15 | 显示全部楼层
随风 发表于 2017-3-6 15:47
正常能跑就好,

额。。。改不正确心里难受啊
回复 支持 反对

使用道具 举报

发表于 2017-3-8 09:50:19 | 显示全部楼层
函数看着没问题,可能是你传参数的时候出错了
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-21 02:07 , Processed in 0.029106 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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