Анонимная структура C с объявлением
Учитывая следующее определение:
struct
{
int x;
int y;
} point;
void main()
{
...
}
Вы объявляете переменную "точка" типа "анонимная структура", есть ли способ объявить другую переменную того же типа вне определения структуры (возможно, в основной функции)?
3 ответа
Решение
Нет, нет, по крайней мере, в стандартном C. Если вы хотите использовать тип, вы должны дать ему имя.
В стандартном с? Нет, ты не можешь этого сделать. Но есть расширения компилятора:
typeof(point) myPoint;
в Clang и GCC, например.
Примечание редакции: main()
должен вернуться int
,
Не слишком уверен, что вы спрашиваете, может быть:
void main()
{
point p;
}
Также см. http://www.cs.usfca.edu/~wolber/SoftwareDev/C/CStructs.htm