初始化指向结构的指针的元素

时间:2016-03-04 22:27:20

标签: c pointers struct

我有以下结构:

typedef struct{
    int freq;
    char val;
} Char; // alias

我需要创建一个缓冲区(指针)到一定数量的Char,如下所示:

Char* chars  = calloc(256, sizeof(Char));

我想为freq中的所有-1结构初始化Charchars。没有循环可以做到吗?

1 个答案:

答案 0 :(得分:2)

如果你使用GCC,你可以Char s[256] = {[0 ... 255] = {-1, 0}};

{-1, 0}是结构初始化

编辑:你可以看一下这篇文章: How to initialize all members of an array to the same value? 它会给出很好的暗示:)