Вопрос

Considering the following definition:

struct
{
    int x;
    int y;
} point;


void main()
{ 
    ...
}

You're declaring the variable "point" of "anonymous struct" type, is there any way to declare another variable of the same type outside the struct definition (maybe in main function)?

Это было полезно?

Решение

No, there isn't, at least not in standard C. If you want to use the type, you have to give it a name.

Другие советы

In standard C? No, you can't do that. But there are compiler extensions:

typeof(point) myPoint;

in clang and GCC, for example.

Editorial note: main() should return int.

Not too sure what you're asking, maybe:

void main()
{ 
    point p;
}

Also see http://www.cs.usfca.edu/~wolber/SoftwareDev/C/CStructs.htm

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top