首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

传到指针参数出错

2013-04-02 
传入指针参数出错!我有两个全局函数:Fun0、 Fun1;Fun1作为参数被Fun0调用。它们类似下面这样:void Fun0( int

传入指针参数出错!
我有两个全局函数:Fun0、 Fun1;Fun1作为参数被Fun0调用。它们类似下面这样:
void Fun0( int A ,float* pB ,float* pC ,float* pD ,void(*Fun1)( float* pE ,float* pF ,float* pG) ) 
{
    .......
    .......
    Fun1 ( pB ,pC ,pD ) ;
}

void Fun1 ( float* pE ,float* pF ,float* pG)
{
    //pDD作为第三个参数传入就没有问题
}

主程序中有这么几个全局变量作为Fun0的参数:
int AA = 5 ;
float*  pBB = GetBBPointer();
float*  pCC = GetCCPointer();
float*  pDD = GetDDPointer();

这样执行:
Fun0 ( AA ,pBB ,pCC , pDD ,Fun1 ) ;
传入的pBB、pCC参数都正常,pDD传入后总提示它是“无效的指针”,我检查过,该指针没有问题;
甚至用正常的pBB、pCC代替pDD都不行,仍提示“无效的指针”。
但如果把pDD直接传入Fun1就没有问题。

各位大侠,以上现象问题可能出在哪里?请不吝赐教,特奉上100分略表心意。谢谢!
[解决办法]
你把这两个函数声明+函数定义(定义只贴头部就可以了)都贴上来看看.
[解决办法]
估计在 Func0 里面修改了参数。
[解决办法]
这么细致的问题,代码必须上全了,或者至少上一个能体现问题的简化版本。现在只能猜了,GetDDPointer[0-3] 怎么返回的指针?

热点排行