igu*_*222 26 c string c-strings
我有一个看起来像的C字符串"Nmy stringP",其中N和P可以是任何字符.如何"my string"在C中编辑它?
pmg*_*pmg 55
要将第一个字符点"删除"到第二个字符:
char mystr[] = "Nmy stringP";
char *p = mystr;
p++; /* 'N' is not in `p` */
Run Code Online (Sandbox Code Playgroud)
要删除最后一个字符,请将其替换为'\ 0'
p[strlen(p)-1] = 0; /* 'P' is not in `p` (and it isn't in `mystr` either) */
Run Code Online (Sandbox Code Playgroud)
Ste*_*sop 11
另一种选择,再次假设"编辑"意味着您要在适当的位置进行修改:
void topntail(char *str) {
size_t len = strlen(str);
assert(len >= 2); // or whatever you want to do with short strings
memmove(str, str+1, len-2);
str[len-2] = 0;
}
Run Code Online (Sandbox Code Playgroud)
这会修改字符串,而不会像pmg的解决方案那样生成新地址.并不是说pmg的答案有什么问题,但在某些情况下并不是你想要的.
| 归档时间: |
|
| 查看次数: |
98457 次 |
| 最近记录: |