[C++] Przypisywanie zwróconej wartości do zmiennej
Ostatnio zmodyfikowano 2013-02-20 18:34
domin568 Temat założony przez niniejszego użytkownika |
[C++] Przypisywanie zwróconej wartości do zmiennej » 2013-02-20 18:23:03 Witajcie, mam pewiem problem, otóż gdy mam taki kod #include <iostream> #include <string> using namespace std; int przechowywacz( int liczba ); int main() { int a = 345; cout << " Siema " << endl; cout << a << endl; przechowywacz( a ); cout << a << endl; return 0; } int przechowywacz( int liczba ) { liczba = 543; return liczba; } To myślałem że jeżeli przechowywacz przypisze liczba inną wartość i zwróci ją do a, a tak nie jest. To jak to w końcu jest? Co return zwraca? Po co jest zwracanie? |
|
Berux |
» 2013-02-20 18:28:04 Do takiego przypisania możesz użyć referencji lub wskaźnika. Jeżeli do tego nie doszedłeś zamień przechowywacz( a ); na a = przechowywacz( a ); - wtedy przypisujesz zwróconą wartość do tej zmiennej. |
|
domin568 Temat założony przez niniejszego użytkownika |
» 2013-02-20 18:33:09 I jeszcze takie pytanie , bo na forum jestem nowy ( Kod działa dzięki , doszedłem do wskaźników i nawet dalej tylko jakoś ciągle wskaźników nie moge ogarnąć ) jak umieścić kod w tych znacznikach ? , bo mój edytor nowej wiadomości jest jak by to powiedzieć "goły" i nie ma żadnych opcji ?? |
|
abdi |
» 2013-02-20 18:34:36 W momencie wywołania funkcji przechowywacz( a ) , a jest przekazywane jako argument, a funkcja operuje na jego kopii. Oznacza to że zmiana wartości zmiennej a wewnątrz funkcji, nie zmieni wartości poza funkcją. Funkcja zwraca tą wartości za pomocą return, i tak jak napisał @up można uzyskać pożądany efekt za pomocą a = przechowywacz( a ) Wtedy wartość zwracaną przypiszesz do a. |
|
« 1 » |