每个人!
我正在写一个简单的 char* 字符串反转。src[k] = src[n - k];
当我将输入数组初始化为指针时,我在写入访问时遇到错误: char * input= "string"
。它是固定的,当我放char input[] = "string"
:
为什么它不适用于指针?非常感谢!
这是我的代码:
void reverse(char* src) {
if (src == NULL) {
return;
}
size_t n = strlen(src) - 1;
char swap;
for (int k = 0; k <= n/2; k++) {
swap = src[k];
src[k] = src[n - k];
src[n - k] = swap;
}
src[n + 1] = '\0';
}