传入指针参数出错!
我有两个全局函数: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分略表心意。谢谢!