C:这种初始化是否正确?

时间:2010-01-21 08:17:33

标签: c

int startingPoint[2]={i,j};

我在阅读完在线代码后得到了这个。这是正确的吗?意味着如果在此语句之前可以在运行时更改i和j的值,是否会使用正确的值初始化数组?请解释一下。

2 个答案:

答案 0 :(得分:8)

这适用于C99但不适用于C89。

答案 1 :(得分:1)

  

int startingPoint [2] = {i,j};
  我在阅读完在线代码后得到了这个。这是正确的吗?

是的,这是一个正确的C代码(适用于所有现代C编译器)。但是,它不适用于C89编译器。

  

表示如果在此语句之前可以在运行时更改i和j的值,是否会使用正确的值初始化数组?

是的!

scanf("%d %d",i,j);
/* some code */

int abc[]={i,j};