我有一个问题,分配如下数组:
int a[];
int b[] = {1,2,3};
&a = &b;
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用指针,但我想这样试试......
caf*_*caf 17
您无法在C中分配数组.您可以使用在以下位置memcpy()声明的函数复制它们<string.h>:
int a[3];
int b[] = {1,2,3};
memcpy(&a, &b, sizeof a);
Run Code Online (Sandbox Code Playgroud)
Oli*_*rth 14
正如您所发现的那样,这种方法不起作用.您无法在C中分配数组.
但是,结构是可分配的.所以你可以这样做:
typedef struct
{
int x[3];
} T;
T a;
T b = { { 1, 2, 3 } };
a = b;
Run Code Online (Sandbox Code Playgroud)