Gibt es in C einen Unterschied zwischen den folgenden drei Zeigern 'int * char', 'int * char' und 'int * char'?


Antwort 1:

Danke für die A2A.

Es gibt bereits 2 gute Antworten; Wie Kevin sagte, ist es dem Compiler egal, wo Sie Leerzeichen um das '*' setzen, und wie Radu sagte, ist char ein eingebauter Typ, so dass Sie ihn nicht als Variablennamen verwenden können. Ich werde den Syntaxfehler von nun an ignorieren.

Ich sehe den ersten Stil nicht im Code, normalerweise ist es der zweite oder dritte. Welches das Beste ist"? Nun, es kann ein Argument für eines von beiden vorgebracht werden, und die Leute können "religiöse" Kriege zu diesem unbedeutenden Thema beginnen, genau wie für die geschweiften Klammern. Mach dir keine Sorgen. Wählen Sie eine aus und verwenden Sie sie konsequent. Wenn die in Ihrem Team festgelegte Konvention (Kodierungsstandards oder eine nicht formalisierte Konvention, sogar stillschweigend) vorschreibt, eine davon zu verwenden, tun Sie es. Es ist einfach egal, versuche einfach konsequent zu sein.

Aber hier ist ein guter Ratschlag: Wenn Sie Zeiger deklarieren / definieren, einen pro Zeile. Andernfalls kann es zu Unklarheiten kommen, welche der Variablen ein Zeiger ist und welche nicht. Es ist auch schöner / lesbarer, da Sie Ihre Zeiger initialisieren ... richtig? ;-)