Forum: Compiler & IDEs Spezielle Art von Kommentaren: /**


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Roman K. (rk_aus_s)


Bewertung
2 lesenswert
nicht lesenswert
Hallo zusammen

Seit kurzem versuche ich, mich in die AVR Programmierung in C 
einzulesen.
Nicht, dass ich jetzt schon alles verstanden hätte, aber ich stolpere 
immer wieder über folgende Schreibweise und frage mich, was das für eine 
spezielle Art von Kommentaren sein könnte?:
1
/**
2
   \defgroup util_setbaud <util/setbaud.h>: Helper macros for baud rate calculations
3
   \code
4
   #define F_CPU 11059200
5
   #define BAUD 38400
6
   #include <util/setbaud.h>
7
   \endcode
8
9
   This header file requires that on entry values are already defined
10
   for F_CPU and BAUD.
11
   [...]

Was hat es mit den Slash und den zwei Sternchen auf sich? Im Vergeich zu 
"normalen" Kommentaren mit Slash und einem Sternchen (/*...*/) werden 
diese in meinem Editor sogar in einer anderen Farbe dargestellt. Ich 
habe solchen Code auch hier im Forum öfters gesehen, werde aber trotz 
langer Suche nicht recht schlau daraus?

Grüsse
Roman

von Carl D. (jcw2)


Bewertung
6 lesenswert
nicht lesenswert

von Alexander (Gast)


Bewertung
-5 lesenswert
nicht lesenswert
Naja, wenn /* eine Kommentar einleitet, kann dann das erste Zeichen 
danach wieder ein * sein, also /**.

Und zum Abschluß halt das */.

von rbx (Gast)


Bewertung
-2 lesenswert
nicht lesenswert
Roman K. schrieb:
> Was hat es mit den Slash und den zwei Sternchen auf sich?

Hinweis auf Funktionsbeschreibung und/oder Ähnliches.

von Teo D. (teoderix)


Bewertung
2 lesenswert
nicht lesenswert
http://codenode.de/kommentare-in-c.html ->
"Es gibt noch einen weiteren Kommentar, nämlich /**. Dies ist formal für 
die Sprache nur ein /* Kommentar, dient aber verschiedenen Tools als 
Erkennung für einen Dokumentationskommentar:
/**
  main Funktion des Hello World Programms
  @author Jens Weller
  @version 1.1
  */
...
Hier können verschiedene Angaben zur Dokumentation gemacht werden, 
zeilen mit @bezeichner werden erkannt, und zum Beispiel von doxygen dann 
entsprechend in einer Dokumentation ausgeben."

von c.m. (Gast)


Angehängte Dateien:

Bewertung
1 lesenswert
nicht lesenswert
kommt wahrscheinlich auf die IDE an, in wie weit kommentare als 
dokumentation ausgewertet werden können - und c(++) kenne ich nicht 
wirklich.

aber hier mal ein beispiel mit java in der netbeans IDE:
über einer methode muss nur "/**+RETURN" eingegeben werden, und die 
@-parameter werden automatisch erzeugt. dann kann man da noch bla/blubb 
dokumentation zu schreiben, und wenn man die methode irgendwo verwendet 
bekommt man die dokumentation angezeigt.
außerdem kann man die gesamte dokumentation über "generate javadoc" 
exportieren und "anderweitig verwenden".
sehr nützlich wenn man klassen aus einem projekt in einem anderen 
verwendet - zm beispiel wenn man irgendein drittanbieter framework in 
seinem eigenen programm benutzt.

von Jobst Q. (joquis)


Bewertung
-1 lesenswert
nicht lesenswert
Obwohl ich von Doxygen noch nichts gehört hatte, mache ich das auch mit 
wichtigen Kommentaren, die in die Dokumentation einfließen sollen.

Häufiger aber mit dem Zeilenkommentar: //**

Mit fgrep "/**" bekomme ich dann einen Extrakt aus dem Quelltext, der 
die wichtigsten Infos enthält.

von Sheeva P. (sheevaplug)


Bewertung
0 lesenswert
nicht lesenswert
Roman K. schrieb:
>
1
> /**
2
>    \defgroup util_setbaud <util/setbaud.h>: Helper macros for baud rate 
3
> calculations
4
>    \code
5
>    #define F_CPU 11059200
6
>    #define BAUD 38400
7
>    #include <util/setbaud.h>
8
>    \endcode
9
>
>
> Was hat es mit den Slash und den zwei Sternchen auf sich?

Das ist ein Kommentar , der für automatische Dokumentationswerkzeuge wie 
das bereits erwähnte Doxygen, aber auch Javadoc, JSDoc oder Swift 
bestimmt ist. Diese Kommentare werden dann in die Quellcodedokumentation 
aufgenommen, und mit den speziellen Tags darin (\defgroup, \code etc.) 
kann man den Kommentar obendrein auch noch ordentlich formatieren.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Jobst Q. schrieb:
> Obwohl ich von Doxygen noch nichts gehört hatte, mache ich das auch mit
> wichtigen Kommentaren, die in die Dokumentation einfließen sollen.
>
> Häufiger aber mit dem Zeilenkommentar: //**
>
> Mit fgrep "/**" bekomme ich dann einen Extrakt aus dem Quelltext, der
> die wichtigsten Infos enthält.

Dann sollest du dir Doxygen mal ansehen. Damit kannst du dir viel 
(Hand-)Arbeit sparen.
https://de.wikipedia.org/wiki/Doxygen

von jz23 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
/** oder /// werden häufig für Dokumentationen benutzt. Häufig Doxygen 
oder um IntelliSense in Visual Studio zu benutzen. Außerdem wird es auch 
benutzt, um Kommentare als Dokumentation zu kennzeichen, auch wenn keine 
Tools dafür genutzt werden.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
2 lesenswert
nicht lesenswert
Da es in diesem Falle ein Stück aus der avr-libc ist, kann ich mit
autoritativer Sicherheit sagen, dass es für Doxygen so gemacht ist. ;-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.