Как указать спецификатор класса хранения для объекта структуры без имени? - PullRequest
2 голосов
/ 15 мая 2019

Я использую структуру типа:

struct{
    int a;
    char b[100];
}name;

Я хочу использовать static спецификатор класса хранения на name.Как я могу это сделать?

Ответы [ 2 ]

3 голосов
/ 15 мая 2019

используйте слово static перед ним:

static struct{
    int a;
    char b[100];
} name;

Это объявит переменную с именем name с типом struct { ... } и спецификатором класса хранения static.

Для инициализации члена struct вы можете использовать

static struct{
    int a;
    char b[100];
} name = {5};
1 голос
/ 15 мая 2019

Если вы хотите инициализировать элементы структуры, имеющие static хранилище в области видимости файла, вы можете сделать что-то вроде

static struct{
    int a;
    char b[100];
} name = {.a=5, .b = "test1"};
...