This question already has answers here:
Closed 4 years ago.
In C, why can't I assign a string to a char array after it's declared?
(6个答案)
我试过这么做,但犯了个错误。为什么我不能这么做?
(6个答案)
我试过这么做,但犯了个错误。为什么我不能这么做?
int main()
{
char sweet[5];
sweet = "kova";
printf("My favorite sweet is %s\n", sweet);
return 0;
}
最佳答案
不,你不能。因为数组名是不可修改的l值。不能用作任何表达式中的左操作数。因此,不能将其保留在=
表达式的左侧。
但是,如果要将字符串kova
复制到数组sweet[]
,可以这样使用strcpy()
。
strcpy(sweet,"kova");
07-24 16:57