gpt4 book ai didi

c - 尝试更改 char* 指针位置时出现 "Error: expression must be a modifiable lvalue"

转载 作者:太空宇宙 更新时间:2023-11-04 08:31:04 25 4
gpt4 key购买 nike

我正在用 C 编写一个消除前导空格的小函数,但它给了我“表达式必须是可修改的左值”

char str1[20];
strcpy (str1, otherStr);

for (int i = 0; i < strlen(str1); i++)
{
if (!isspace(str1[i]))
str1 = &(str1[i]);
}

我在这里做错了什么? (是的,定义了 otherStr)

最佳答案

您的代码中没有 char * 指针,这可能会发生变化。数组不是指针。你不能“改变”它的位置。

在 C 语言中,数组对象本身是不可修改 左值,这就是错误措辞的来源。

关于c - 尝试更改 char* 指针位置时出现 "Error: expression must be a modifiable lvalue",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28352234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com