The correct code creates an instance of AS1_TComData and then the function takes the address of the instance as a argument. The wrong code creates only a pointer. But the pointer doesn't point anywhere.

The correct code creates an instance of AS1_TComData and then the function takes the address of the instance as a argument. The wrong code creates only a pointer. But the pointer doesn't point anywhere.