Guys. Why?
http://www.zorro-trader.com/manual/en/apointer.htm

Code:
struct S
{
	int* P;
};

void main()
{
	struct S s;
	s.P = malloc(sizeof(int));
	*(s.P) = 1234; // Ok
	s.P[0] = 1234; // Error: subscript requires array or pointer type
	int* p = s.P;
	p[0] = 2345; // Ok
	printf("%d", *(s.P));
	free(s.P);
}