char* 作为参数的问题
有个gsmSerializeNumbers函数,该函数中有char* 的参数pDst,没法给*pDst赋值,就是在
*pDst++=*pSrc++一直出错,提示说0xc0000005 access violation,我用的是Visual C++6.0的环境
代码如下:
int gsmSerializeNumbers(const char* pSrc,char* pDst,int nSrcLength)
{
int nDstLength;
char ch;
nDstLength=nSrcLength;
for (int i=0;i <nSrcLength;i+=2)
{
ch=*pSrc++;
*pDst++=*pSrc++; <==问题出错的行
*pDst++=ch;
}
if (*(pDst-1)== 'F ')
{
pDst--;
nDstLength--;
}
pDst= '\0 ';
return nDstLength;
}
[解决办法]
那就是传入 pDst 有问题,是非法的地址,具体有什么问题要你追踪上去查才知道了。
[解决办法]
地址非法!无法访问