Я столкнулся с проблемой, определив размер структуры. Я обнаружил, что можно определить размер структуры с помощью предшествующего ключевого слова struct
внутри операции sizeof, хотя для соответствующей структуры не было создано ни одного объекта:
Пример:
#include <stdio.h>
int main()
{
struct struct1
{
char a[20];
int v,i;
double grw;
};
printf("Size of struct1 in Byte: %lu",sizeof(struct struct1));
return 0;
}
Вывод:
Size of struct1 in Byte: 40
Как это возможно?
Как можно sizeof определить размер структуры с помощью struct
Ключевое слово внутри sizeof-операции, если ни один объект этой структуры не был создан?
Или был создан struct1
объект, о котором я не знал?
Я думал структура - это только тип данных, но не объект своего собственного типа.