Czy ta sztuczka zadziała w C?

Chcę dodać pole do struktury w C. Więc na przykład mam następującą strukturę.

struct A
{
 some_type x;
 some_type y;
}

Deklaruję nową strukturę, taką jak ta.

struct B
{
 A a;
 some_type z;
}

Teraz mówię, że mam taką funkcję.

int some_function( A * a )

Czy możliwe jest przekazanie zmiennej typu B do tego w programie.

B * b;
......
A * a = (A*)b;
some_function( a );

A także móc korzystać z pól wewnątrzsome_function używająca->x na przykład?

questionAnswers(5)

yourAnswerToTheQuestion