读书人

数组参数传递有关问题

发布时间: 2012-02-24 16:30:39 作者: rapoo

数组参数传递问题
unsigned short int Buffer[1024]
Pack * Pack::Singal_pack_parse(unsigned short int * pBuffer)
pPack=Singal_pack_parse (Buffer)
这样传递参数有错吗?
我调式时候在外部看了buffer里面的内容是有值的,传到里面就之显示一个值,都是零
还有为什么unsigned short int未赋值时显示是54***(后几位不清楚了)

[解决办法]
这样传参数没错,传到里面只有一个值是因为Singal_pack_parse函数接收的是数组首地址,在里面看只有一个。

54**** 是因为没有初始化,里面有一个随机值。
[解决办法]
当然 你使用的是指针 只显示头位数据
*(pBuffer++)可以得到后面的数据

另外 Buffer[1024]没有赋初始值 得到的只是随机数据而已.

[解决办法]
你写的没有错误

在调用函数外,Buffer是指向数组的指针,当然可以看到Buffer数组的内容,传到函数内,这只是个指针,当然看不到你想看到的数组内容,只有指针值

读书人网 >VC/MFC

热点推荐