Pointer als Argument in Funktionsdeklaration angeben

Gast #6152298
Lesenswert?
• ▲
▼
Hallo

Kennt jemand die korrekte Schreibweise für die Funktionsdeklaration, 
wenn eines der Argument ein Zeiger ist?

In diesem Beispiel hab ich die Varianten, die mir in den Sinn gekommen 
sind angegeben:
1
void dieFunktion(int arg1, int *argP);    //Variante 1
2
void dieFunktion(int , int );             //Variante 2
3
void dieFunktion(int , *int );            //Variante 3
4
void dieFunktion(int , int* );            //Variante 4
5

6
void main(void )
7
{
8
    int Zahl1;
9
    int Zahl2;
10

11

12
    dieFunktion(Zahl1, Zahl2);
13
    while(1);
14
}
15

16
dieFunktion(int arg1, int *argP)
17
{
18
   Zahl2 = Zahl1;
19

20
}

Welche der 4 Varianten werden vom MPLAB Compiler zuverlässig 
interpretiert?

Besten Dank und schönes Wochenende!
Gast #6152386
Lesenswert?
• ▲
▼
Vielen Dank

Beim Aufruf habe ich das & vergessen, weil in meinem eigentlichen code 
dort ein Array und nicht ein simpler int steht, wodurch das & in der 
Parameterübergabe ja enthalten ist.

Gruss
Michi
(Firma: egal) #6152594
Lesenswert?
• ▲
▼
Michi schrieb:
> Beim Aufruf habe ich das & vergessen, weil in meinem eigentlichen code
> dort ein Array und nicht ein simpler int steht

Ich glaub du schmeißt hier noch einiges durcheinander.
Schau dir mal "call-by-value" und "call-by-reference" genauer an:
https://de.wikibooks.org/wiki/C%2B%2B-Programmierung/_Weitere_Grundelemente/_Prozeduren_und_Funktionen#call-by-value

Und Achtung, hier gibt es Unterschiede je nachdem ob man einen reinen 
C-Compiler verwendet oder einen für C++ (der ja in der Regel genauso gut 
C-Style-Code verarbeitet).

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.