反转字符串问题
- C/C++ code
char *revstr(char *str, size_t len){ char *start = str; char *end = str + len - 1; char ch; if (str != NULL) { while (start < end) { ch = *start; *start++ = *end; //在这个位置出错 *end-- = ch; } } return str;}int _tmain(int argc, _TCHAR* argv[]){ char *ch = "123456"; revstr(ch,6); cout<< ch<<endl; return 0;}运行的时候总是出现这种错误:写入位置 0x004176fc 时发生访问冲突,快抓狂了~~~
[解决办法]
const常量不能修改
char *ch = "123456";
隐士转换为const char
[解决办法]
- C/C++ code
char *ch = "123456";