查看: 3510|回复: 3

[CodeWarrior] CodeWarrior中函数的参数传递问题

[复制链接]

该用户从未签到

14

主题

40

帖子

0

注册会员

Rank: 2

积分
169
最后登录
1970-1-1
发表于 2010-7-29 11:49:48 | 显示全部楼层 |阅读模式
由于函数比较多,所以采取了跳转表的方式!但是发现个奇怪的问题就是在跳转的过程中参数传递漏传了!
下面是代码中的跳转指令与目标函数。
(void)(*PGNFuncList[ paramGroupNumAddr ])( j1939PGN, dataLen, data );      //跳转
const UINT16 (*PGNFuncList[])( const UINT32 currentPGN, const UINT8 dataLen, const UINT8 *const data ) //这个是跳转表

PGN65159Func

UINT16 PGN65159Func( const UINT32 currentPGN, const UINT8 dataLen, const UINT8 *const data ) //目标函数
在跳转到目标函数时dataLen的参数传递出了问题,本来应该是8,但变成0了!其余两个参数正常!
我知道答案 目前已有2人回答
回复

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-30 09:33:22 | 显示全部楼层

    RE:CodeWarrior中函数的参数传递问题

    PGN65159Func
    怎么使用的,能不能写出来。
    该会员没有填写今日想说内容.

    该用户从未签到

    14

    主题

    40

    帖子

    0

    注册会员

    Rank: 2

    积分
    169
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-30 10:10:36 | 显示全部楼层

    回复:CodeWarrior中函数的参数传递问题

    回复第 2 楼 安 于2010-07-30 01:33:22发表:
    PGN65159Func
    怎么使用的,能不能写出来。 

    PGN65159Func只是几十个函数中的一个,最简单的函数里也就只有条赋值语句!进入所有的目标函数都是相同的问题,dataLen参数传递变成了0
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-30 11:09:34 | 显示全部楼层

    RE:CodeWarrior中函数的参数传递问题

    我是说
    UINT8 *const data ) //这个是跳转表

    PGN65159Func

    里面的PGN65159Func怎么能使用的
    该会员没有填写今日想说内容.
    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-20 20:40 , Processed in 0.090229 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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