From d0668d3cd77ad617c83f6c2f124d84417285766b Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Tue, 16 Sep 2008 17:01:28 +0200 Subject: Initialer Import --- .../03_Zeiger_als_Parameter.cpp | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 fortgeschritten/03_Zeiger_als_Parameter/03_Zeiger_als_Parameter.cpp (limited to 'fortgeschritten/03_Zeiger_als_Parameter/03_Zeiger_als_Parameter.cpp') diff --git a/fortgeschritten/03_Zeiger_als_Parameter/03_Zeiger_als_Parameter.cpp b/fortgeschritten/03_Zeiger_als_Parameter/03_Zeiger_als_Parameter.cpp new file mode 100644 index 0000000..dbfcdc9 --- /dev/null +++ b/fortgeschritten/03_Zeiger_als_Parameter/03_Zeiger_als_Parameter.cpp @@ -0,0 +1,32 @@ +#include + + +void erhoehe(int x) { + x++; +} + +void erhoeheZeiger(int *x) { + (*x)++; +} + + +int main() { + int i = 5; + + std::cout << i << std::endl; + + /* Wird der int einfach so übergeben, ändert sich nuer x-er Wert innerhalb der erhoehe-Funktion, + * das urspüngliche i wird nicht beeinflusst + */ + erhoehe(i); + std::cout << i << std::endl; + + /* Wird ein Zeiger übergeben, kann die Funktion über den Zeiger auf die ursprüngliche Variable + * zugreifen und sie so erhöhen. Will man, dass eine Funktion einen Parameterwert verändert, + * muss sie also einen Zeiger übergeben. + */ + erhoeheZeiger(&i); + std::cout << i << std::endl; + + return 0; +} -- cgit v1.2.3