将数组分配给数组

问题描述

如果使用'='将已经存在的具有元素的数组分配给空数组变量,它们是否已连接?

例如char x[] = "ABC";是现有的数组,如果我创建新的数组char new[];并执行char new[] = char x[];是否更改一个数组会影响另一个

解决方法

char x[] = "ABC";x数组的初始化,并且是复制字符串文字的唯一示例。

char new[] = char x[];不执行任何操作,因为它是无效的语法,并且程序根本无法编译。

char new[] = x;是非法的,因为您无法使用其他数组初始化数组。

char new[4];
new = x;

是非法的,因为您无法分配数组。

您需要:

char new[4];
strcpy(new,x);

memcpy(new,x,szieof(new));