当前位置: 技术问答>linux和unix
关于const char*&内容被修改,请教原因?
来源: 互联网 发布时间:2016-09-01
本文导语: 我也了一段程序,如下 int getHost( const unsigned char*& pVal, D_UINT32& len, D_UCHAR& pFlag) const; ret = XXX->getHost(sp,lens,pflag); if (ret == RET_OK) { unsigned char * tmp = sp; while(*tmp) { * tmp = tolower...
我也了一段程序,如下
int getHost( const unsigned char*& pVal, D_UINT32& len, D_UCHAR& pFlag) const;
ret = XXX->getHost(sp,lens,pflag);
if (ret == RET_OK)
{
unsigned char * tmp = sp;
while(*tmp)
{
* tmp = tolower(*tmp);
tmp++;
}
val->assign((char*)sp,lens);
}
结果编译通过,运行成功,但是造成了const unsigned char*& pVal的修改,请问这是为什么?
int getHost( const unsigned char*& pVal, D_UINT32& len, D_UCHAR& pFlag) const;
ret = XXX->getHost(sp,lens,pflag);
if (ret == RET_OK)
{
unsigned char * tmp = sp;
while(*tmp)
{
* tmp = tolower(*tmp);
tmp++;
}
val->assign((char*)sp,lens);
}
结果编译通过,运行成功,但是造成了const unsigned char*& pVal的修改,请问这是为什么?
|
const unsigned char*& pVal
const修饰的只是char,因此指针指向的char不能改变,但是指针本身是可以改变的,
const修饰的只是char,因此指针指向的char不能改变,但是指针本身是可以改变的,
|
clearmake只是make tools,不是compiler~~~
如果问题不是compiler上面,那就翻clearmake的配置文件或者是编译脚本区吧。
俺没用过,只有思路,供参考。
如果问题不是compiler上面,那就翻clearmake的配置文件或者是编译脚本区吧。
俺没用过,只有思路,供参考。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。