Ale*_*nta 2 c arrays initialization declaration
我有一个问题,是否有任何方法可以初始化一个没有括号的多个元素的数组,例如:
int a[5] = {1,2,3,4,5};
由于*(a + 5)等于 with a[5],为什么我不能初始化:
int *(a + 5) = {1,2,3,4,5};
它给了我错误:在 '+' token 之前预期为 ')'。
的等价性E1[E2]和*(E1 + E2)仅适用于一个表达式。您拥有的是一个具有不同语法规则的声明。
所以你需要使用这个语法:
int a[5] = {1,2,3,4,5};
Run Code Online (Sandbox Code Playgroud)