数组是根据类型所需内存分配的连续的一段内存
数组名不只是这个数组的代号,还是这个数组第一个元素的内存地址
你看,每个元素地址相差1,char这个类型也是相差一个字节(大致理解一下,我不确定地址是不是按字节来分的)
如果你写的是char,说明这是一个字符变量
name的值又是数组首元素的地址(所以你在VS里面用数组名直接为其赋值字符串会报错),所以会报错
*另外有个小点,变量或者类实例的地址是无法修改的,相当于常量
那至于改成string有没问题的原因,本身string就支持向另一个string赋值,它是个类,自己封装了赋值符号,所以你直接赋值就没问题