1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Pointer Schreibweise

  • Saruman
  • 13. September 2007 um 12:47
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • Saruman
    Punkte
    2.236
    Beiträge
    423
    • 13. September 2007 um 12:47
    • #1

    Hallo,

    Ich hab eine für C++ Programmierer recht einfache Frage:
    Pointer definiert man in C++ ja einfach per (einfaches Bsp):

    int *thing_ptr;

    Jetzt hab ich aber schon öfter folgende Schreibweise gesehen:

    int* thing_ptr;
    Also der Asteriks an den Typ angehängt statt vor dem Variablennamen.

    Konkret im DirectX SDK:
    ID3D10Device* g_pd3dDevice = NULL;

    Bisher hab ich einfach angenommen, dass das genau das gleiche ist wie oben, aber ich zweifel grad ein wenig an der Theorie.
    Kann mir wer weiterhelfen, ist das einfach nur eine andere Schreibweise zum definieren eines Pointers oder bewirkt das etwas anderes?

    Google zu Sternen und Whitespaces zu befragen war leider nicht sehr ergiebig...

  • kira
    Punkte
    450
    Beiträge
    88
    • 13. September 2007 um 12:53
    • #2

    grundsätzlich funktioniert beides , aber

    http://www.macmini-forum.de/viewtopic.php?f=21&t=5458

  • max_rayman
    Punkte
    887
    Beiträge
    169
    • 13. September 2007 um 12:56
    • #3

    Soweit ich mich erinnern kann (sysprog ;)), ist es ein und dasselbe ob du

    Code
    int* foo;

    oder

    Code
    int *foo;

    schreibst. Eigentlich müsste auch

    Code
    int
    *
    foo;

    funktionieren.

    Nur der Lesbarkeit halber schreibt man lieber

    Code
    int *foo,bar,xy;

    als

    Code
    int* foo,bar,xy;

    Wobei zu beachten ist das nur foo ein pointer ist.

    P.S.: Ich hoffe das stimmt weil dann ist bei sysprog was hängen geblieben :)

    Edit: kira war schneller ...

  • Saruman
    Punkte
    2.236
    Beiträge
    423
    • 13. September 2007 um 12:58
    • #4

    Super, danke!
    Wie hast du den Link jetzt so schnell gefunden?

  • kira
    Punkte
    450
    Beiträge
    88
    • 13. September 2007 um 13:05
    • #5

    wenn man nach den 3 wörtern: "leerzeichen * pointer" sucht, .. findet man einiges.

    http://www.anum.tuwien.ac.at/~dirk/teaching/2005x06/eprog/c2.pdf

  • Saruman
    Punkte
    2.236
    Beiträge
    423
    • 13. September 2007 um 16:04
    • #6

    Merci!

  • Erklärbär
    Punkte
    661
    Beiträge
    130
    • 13. September 2007 um 16:44
    • #7

    die deklaration von pointern als variable ist ja noch das geringere übel. schlimm wird es, wenn das schlüsselwort "const" mit ins spiel kommt.

    dazu gibts eine gute erklärung:
    http://www.possibility.com/Cpp/const.html

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum