What's the difference between the two pointer operators in the code gen?

1 view (last 30 days)
In code generation using Simulink coder the pointers can be used in two different ways:
(*ptr).variable or ptr->variable
What is the difference? When coder uses one or the other?
thanks

Accepted Answer

James Tursa
James Tursa on 5 Jul 2017
I don't know why the Coder will produce one form vs the other form, but by definition in the C language they mean exactly the same thing to the C compiler.
  3 Comments
James Tursa
James Tursa on 5 Jul 2017
Edited: James Tursa on 5 Jul 2017
My first WAG is that maybe two different groups of people at TMW produced the Coder logic for the two different cases, and one group preferred the (*ptr).variable syntax while the other group preferred the ptr->variable syntax.
Walter Roberson
Walter Roberson on 5 Jul 2017
In my experience (*ptr).variable becomes more probable with mechanical code generation that is traversing data structures looking for the correct field, whereas ptr->variable is more probable when you already know you are at the correct location. They mean the same, but when you are doing mechanical code generation you tend to be thinking of "current location" as an emphasis that tends to lead more to *ptr syntax.

Sign in to comment.

More Answers (0)

Categories

Find more on Deployment, Integration, and Supported Hardware in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!