这个字符串长度为几:char s[]=new char[n+1]; s[n]='\0';在C++Builder中strlen(s)为0,但是在vc2005中为n!请教为何
这个字符串长度为几:char s[]=new char[n+1]; s[n]='\0';在C++Builder中strlen(s)为0,但是在vc2005中为n!请问为何?
如题
------解决方案--------------------
可能是C++Builder编译时给s做了赋0操作。
------解决方案--------------------
你这个代码能编译过么?
------解决方案--------------------
字符串为初始化就计算其长度,显然是个错误,讨论结果就没什么意义了。
------解决方案--------------------
vc3.0中,你的代码不能过,其实这是编译器处理的问题,没必要深究
------解决方案--------------------
可能是填充的方式不同
------解决方案--------------------
关注,
可能是builder把s初始为0了
如题
------解决方案--------------------
可能是C++Builder编译时给s做了赋0操作。
------解决方案--------------------
你这个代码能编译过么?
------解决方案--------------------
字符串为初始化就计算其长度,显然是个错误,讨论结果就没什么意义了。
------解决方案--------------------
vc3.0中,你的代码不能过,其实这是编译器处理的问题,没必要深究
------解决方案--------------------
可能是填充的方式不同
------解决方案--------------------
关注,
可能是builder把s初始为0了