use*_*292 1 c string segmentation-fault strchr
我需要在C字符串中将'&'的每个出现替换为','.
我做了这个,它的工作原理
代码1:
char *val, *querydup;
.
.
.
val=strchr(querydup,'&');
while(val != NULL) {
*val=',';
val=strchr(querydup,'&');
}
Run Code Online (Sandbox Code Playgroud)
为了"优雅"我尝试了以下,但它导致seg错误,甚至我的指针光标被破坏!很奇怪,我在vmware vm中运行linux.
代码2:
while(val=strchr(querydup,'&') != NULL) {
*val=',';
}
Run Code Online (Sandbox Code Playgroud)
那可能是什么错??
你认为代码1是"优雅的"吗?...
问候.
我正在回答"优雅"部分:)
你一遍又一遍地检查相同的字符.
假设querydup有"&&&&&&&&&&".在它进行了前几次更改后,",,,,,,&&&&"您仍然可以从头开始检查.
尝试重用val"优雅":)
val = strchr(val, '&');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1854 次 |
| 最近记录: |