Kommentare

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Whitespace (Übersicht) - Index

Kommentare sind Textteile, die Erklärungen zum Programm enthalten. Sie sind nur für den Programmierer von Nutzen und werden vor der Zerlegung aus dem Quelltext entfernt.

Es gibt zwei Arten der Kommentierung: die Methode der Programmiersprache C und der Programmiersprache C++ . Der Compiler unterstützt beide Methoden und stellt eine zusätzliche, optionale Erweiterung bereit, die eine Verschachtelung von Kommentaren ermöglicht. Wenn Sie nicht mit der Prämisse der ANSI-Kompatibilität compilieren, können Sie beide Methoden in C und C++ Programmen einsetzen.

Sie sollten allerdings die in der folgenden Behandlung des Themas gegebenen Empfehlungen zum Gebrauch von Whitespace und Begrenzern in Kommentaren berücksichtigen.

C-Kommentare

Ein traditioneller C-Kommentar ist eine Zeichenfolge, die nach dem Zeichenpaar /* steht. Der Kommentar endet bei dem ersten Zeichenpaar */, das auf das Startsymbol /* folgt. Die Kommentar-Begrenzungszeichen und die von ihnen eingeschlossene Zeichenfolge werden nach der Makroerweiterung durch ein Leerzeichen ersetzt. Beachten Sie, dass manche C-Implementierungen Kommentare entfernen, ohne sie durch Leerzeichen zu ersetzen.

Im Compiler ist es nicht möglich, Symbole mit Hilfe von /**/ zu verschmelzen (diese Methode ist ohnehin nicht portabel). Das Einfügen von Symbolen wird mit dem ANSI-spezifizierten Zeichenpaar ## wie folgt durchgeführt:

#define VAR(i,j)  (i/**/j)    /* unzulässig  */
#define VAR(i,j)  (i##j)      /* OK */
#define VAR(i,j)  (i ## j)    /* ebenfalls zulässig */

Der Compiler gliedert die Deklaration,

int /* Deklaration */ i /* Zähler */;

wie diese drei Symbole:

int i;

Eine Beschreibung des Einfügen von Symbolen finden Sie unter Einfügen von Symbolen mit ##.

Kommentare in C++

In C++ können Sie einen einzeiligen Kommentar mit zwei Schrägstrichen (//) anlegen. Der Kommentar kann an beliebiger Stelle beginnen und erstreckt sich bis zur nächsten neuen Zeile:


class X {  // Kommentar
... };

Auch in reinem C-Quelltext können mit zwei Schrägstrichen Kommentare erstellt werden. Diese Funktion ist für den Borland C++ Compiler spezifisch und im allgemeinen nicht portierbar.

Verschachtelte Kommentare

In ANSI C sind verschachtelte Kommentare nicht zulässig. Wenn Sie die vorausgehende Zeile folgendermaßen herauskommentieren wollen:

/*  int /* Deklaration */ i /* Zähler */; */

tritt ein Fehler auf, weil der Bereich des ersten /* am ersten */ endet. Dies ergibt

i ; */

wodurch ein Syntaxfehler verursacht wird.

Um verschachtelte Kommentare zu ermöglichen, wählen Sie Optionen|Projekt|Compiler|Quelltext|Verschachtelte Kommentare.

Begrenzer und Whitespace

In seltenen Fällen können durch Verwendung von (syntaktisch nicht erforderlichen) Whitespace-Zeichen vor /* bzw. // und nach */ Portabilitätsprobleme vermieden werden. Beispielsweise wird der C++ Quelltext


int i = j//* dividiert durch k*/k;
+m;

zerlegt in int i = j + m und nicht in:

int i = j/k;
+m;

wie es normalerweise in C der Fall wäre. Dieses Problem lässt sich durch die folgende, besser lesbare Schreibweise vermeiden:

int i = j//* dividiert durch k*/k;
+m;

vermeidet dieses Problem.

Siehe auch