对于数组的初始化大家应该都是了然于胸的,相信大家平时应该会 遇到可能需要对数组进行一些批量的赋值的情况,比如我需要一个这样的数组:
{100, 99, 99, 99, 99, 99, 99, 99, 99, 98, 97}
第1个元素到第7个元素均为99,这种时候如果按照普通的写法,我们需要把所有的元素的具体内容都写出来,需要重复写多次99,如果数量不多的话,写一遍也不会很耗时间,但是如果数量比较庞大的话,那就非常麻烦了,所以有没有什么比较简洁的办法能够方便快捷的批量初始化数组呢?其实是有的。
C99支持这样一种数组初始化方式,可以很方便的对数组进行初始化:
int arr[10] = {100, [1 ... 7] = 99, 98, 97};
省略号的两边的数字代表元素的下标,实际意义是将第1个元素至第7个元素均赋值为99;
示例:
#include <stdio.h>
void main(void)
{
int arr[5] = {100, [1 ... 3] = 50, 10};
for (int i = 0; i < 5; i++)
{
printf("a[%d] = %d\r\n", i, arr[i]);
}
}
输出:
a[0] = 100
a[1] = 50
a[2] = 50
a[3] = 50
a[4] = 10
本文链接:https://www.dzdvip.com/33677.html
版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。