Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: bitmaster am 28. March 2009, 12:34

Titel: Referenzen als Funktionsübergabe
Beitrag von: bitmaster am 28. March 2009, 12:34
Sind Referenzen als Funktionsübergabe in C nicht möglich? In meinem C++ Buch steht folgeder Code:

void quadrat(int &x)
{
x = x*x;
}

Aber wenn ich das dem gcc sage, dann meint er:

Zitat
Fehler: expected »;«, »,« or »)« before »&« token

Also ist das erst seit C++ möglich, oder wie?

bitmaster
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: Jidder am 28. March 2009, 12:45
Also ist das erst seit C++ möglich, oder wie?
ja. In C hast du nur Zeiger, mit denen du aber ähnliches machen kannst.
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bitmaster am 28. March 2009, 12:58
Also ist das erst seit C++ möglich, oder wie?
ja. In C hast du nur Zeiger, mit denen du aber ähnliches machen kannst.
bug
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bluecode am 28. March 2009, 14:10
Dann nimm einen C++ Compiler. Es hat nicht umsonst hinten ein "++", irgendwas muss sich schließlich verändert haben...
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bitmaster am 28. March 2009, 14:31
Dann nimm einen C++ Compiler. Es hat nicht umsonst hinten ein "++", irgendwas muss sich schließlich verändert haben...
Hmm... bist du jetzt sauer?

Zitat
In C hast du nur Zeiger, mit denen du aber ähnliches machen kannst.
Hmm... könntest du mir das anhant des Beispiels von meiner oben genannten Funktion quadrat erklären/zeigen?

danke
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: kevin am 28. March 2009, 14:46
void quadrat(int* x)
{
*x = *x * *x;
}
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bluecode am 28. March 2009, 14:52
Dann nimm einen C++ Compiler. Es hat nicht umsonst hinten ein "++", irgendwas muss sich schließlich verändert haben...
Hmm... bist du jetzt sauer?
Nö, aber wenn man C++ will (was ja ein legitimes Anliegen ist, ich benutze es ja selbst für meinen Kernel), dann sollte man eben einen C++ Compiler verwenden. Das bringt eigentlich auch keine größeren Probleme mit sich.
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bitmaster am 28. March 2009, 14:57
Dann nimm einen C++ Compiler. Es hat nicht umsonst hinten ein "++", irgendwas muss sich schließlich verändert haben...
Hmm... bist du jetzt sauer?
Nö, aber wenn man C++ will (was ja ein legitimes Anliegen ist, ich benutze es ja selbst für meinen Kernel), dann sollte man eben einen C++ Compiler verwenden. Das bringt eigentlich auch keine größeren Probleme mit sich.
damals habt ihr mir von c++ abgeraten als ich es wollte, ihr meintet c wäre für mich besser :/
Titel: Re: Referenzen als Funktionsübergabe
Beitrag von: bluecode am 28. March 2009, 15:08
damals habt ihr mir von c++ abgeraten als ich es wollte, ihr meintet c wäre für mich besser :/
hm, stimmt, damit könntest du dir in den Zeh schießen und beim versucht das zu fixen die Welt in den Abgrund reißen. Hast schon recht, tus lieber nicht :wink: