C static struct

参考链接:  http://blog.csdn.net/keyeagle/article/details/6708077/

NOTICE: 

          静态全局变量 与 普通的全局变量的区别

          static 全局变量它只在定义它的源文件内有效,其他源文件无法访问它,  而普通全局变量可以通过 extern 方式使用全局变量

 struct:   用.name ="abc" 或  name:"abc"

      

#include <stdio.h>

#define uint64_t   int 
#define uint32_t   int 


struct mtd_partition {
    const char *name;       /* identifier string */
    uint64_t size;          /* partition size */
    uint64_t offset;        /* offset within the master MTD space */
    uint32_t mask_flags;        /* master MTD flags to mask out for this partition */
    // struct nand_ecclayout *ecclayout;   /* out of band layout for this partition (NAND only) */
};


#define MTDPART_OFS_APPEND   100

int main(int argc, char const *argv[])
{
    
    static struct mtd_partition ls1x_nand_partitions[] = {
    {
        .name   = "kernel",
        .offset = MTDPART_OFS_APPEND,
        .size   = 14*1024*1024,
    }, {
        .name   = "rootfs",
        .offset = MTDPART_OFS_APPEND,
        .size   = 100*1024*1024,
    }, {
        .name   = "data",
        .offset = MTDPART_OFS_APPEND,
        .size   = 100*1024*1024,
    },
};


static struct mtd_partition ls1x_nand_partitions1[] = {
    {
        name   : "kernel",
        offset : MTDPART_OFS_APPEND,
        size   : 14*1024*1024,
    }, {
        name   : "rootfs",
        offset : MTDPART_OFS_APPEND,
        size   : 100*1024*1024,
    }, {
        name   : "data",
        offset : MTDPART_OFS_APPEND,
        size   : 100*1024*1024,
    },
};





  printf("%s
", ls1x_nand_partitions[0].name);
  printf("%s
", ls1x_nand_partitions1[0].name);

    return 0;
}
原文地址:https://www.cnblogs.com/hzijone/p/7007799.html