Нет никакой разницы.Они точно такие же.
Вы можете написать это так, как вам нравится.Как правило, программисты на С ++ ставят звездочку рядом с типом , в то время как программисты на Си чаще размещают звездочку рядом с именем переменной .
Единственная ловушка, о которой следует знать, - это когда вы объявляете несколько переменных в одной строке (что вам действительно не следует делать в любом случае, если не по этой причине).Например, в следующем операторе в качестве указателя объявляется только переменная x
:
char* x, y;
Сравните это со следующим, что сделает более понятным, какие переменные являются указателями:
char *x, y;
Как я могу судить, третий синтаксис возник как плохой компромисс между двумя основными вариантами.Вместо того, чтобы ставить звездочку рядом с одной или другой, кто-то решил разместить ее посередине, что является почти единственным местом, к которому он не относится .