今天给结构数组初始化的时候发现也能指定初始化项目列表。于是试了试int数组也可以,在这里把这几种常用的数组初始化方法总结下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
void putarr(int *);

int main(void)
{
/*不同方法初始化*/
int a[] = {0, 1, 2, 3, 4};
putarr(a);
int b[5] = {2};
putarr(b);
int c[5] = { [2] = 2 }; /*指定初始化项目*/
putarr(c);
int d[5] = {0, 1, 2};
putarr(d);
return 0;
}

void putarr(int * arr)
{
int i;
for(i = 0; i < 5; i++)
printf("%d ", arr[i]);
putchar('\n');
}

输出:

0 1 2 3 4
2 0 0 0 0
0 0 2 0 0
0 1 2 0 0

Comments

2015-08-17