指定初始化

指定初始化的好处

  • 使用灵活。可以初始化任意成员的值。
  • 易于维护。大型项目的结构体非常复杂,添加或删除成员时的改动比较小。

指定初始化数组

整体初始化

int a[10]={1,2,3,4,5,6,7,8,9,}    //a[9]会默认初始化为0

指定初始化:中间用逗号隔开

int a[10]={[2] = 2, [5] = 5};  
int a[10]={[2 ... 5] = 1, 6}; //表示a[2]~a[5]为1,a[6]=6

...表示范围扩展,前后都要有空格。...还可用在switch-case语句中。

switch(i){
  case 1:
    printf("1\n");
    break;
  case 2 ... 6:
    printf("6\n");
    break;
}

指定初始化结构体

struct student{
  char name[20];
  char address[50];
  int age;
  int scores;
}

整体初始化

struct student stu = {"deng", "China", 20, 100};

指定初始化:结构体不同成员之间用逗号隔开。

struct studeng stu = {
  .name = "deng",
  .age = "20"
}
posted @ 2022-08-11 20:06  煮茶听风雨  阅读(42)  评论(0编辑  收藏  举报