Autor Thema: Referenzen als Funktionsübergabe  (Gelesen 7997 mal)

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« 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
In the Future everyone will need OS-64!!!

Jidder

  • Administrator
  • Beiträge: 1 625
    • Profil anzeigen
Gespeichert
« Antwort #1 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.
Dieser Text wird unter jedem Beitrag angezeigt.

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #2 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
In the Future everyone will need OS-64!!!

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #3 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...
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #4 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
In the Future everyone will need OS-64!!!

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #5 am: 28. March 2009, 14:46 »
void quadrat(int* x)
{
*x = *x * *x;
}
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #6 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.
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

bitmaster

  • Troll
  • Beiträge: 1 138
    • Profil anzeigen
    • OS-64 = 64 Bit Operating System
Gespeichert
« Antwort #7 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 :/
In the Future everyone will need OS-64!!!

bluecode

  • Beiträge: 1 391
    • Profil anzeigen
    • lightOS
Gespeichert
« Antwort #8 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:
lightOS
"Überlegen sie mal 'nen Augenblick, dann lösen sich die ganzen Widersprüche auf. Die Wut wird noch größer, aber die intellektuelle Verwirrung lässt nach.", Georg Schramm

 

Einloggen