为什么数组变量不能赋值字符串常量 好几年不碰C语言了,遇到了个很初级的问题居然一时间懵了,记录一下。 char msg_array[10]; msg_array = "hello world"; printf("msg_array = %s\n",msg_array); 大家都知道这种写法是错误的,但是为什么是错的呢? 在《c与指针》这本书里就提到过: 字符串常量的直接值是一个指针,而不是这些字符本身。 而我们都知道数组名本身就是一个指针,且其指向的地址是不可