Wskaznik czy dobrze to rozumiem?
Ostatnio zmodyfikowano 2008-11-13 19:31
Fletcher Temat założony przez niniejszego użytkownika |
Wskaznik czy dobrze to rozumiem? » 2008-11-12 16:47:21 Siema mam pytanie co do wskaźników,oto fragment kodu. #include <iostream> #include <conio.h> using namespace std; int main() { long long zmienna = 213; long long * wskaznik =& zmienna; cout << "zmienna=" << zmienna << endl; cout << "*wskaznik=" <<* wskaznik << endl; getch(); return( 0 ); } Mam to rozumieć iż zapis oznacza long long * wskaznik =& zmienna; wskaznik dostaje wartość hmmm jak by to powiedzieć "Cyfrowo" :P i przerabia ją na liczbę tak? |
|
DejaVu |
» 2008-11-12 17:31:30 W jednej z lekcji kursu C++ masz napisane: [tutorial]Aby pobrać adres dowolnej zmiennej wystarczy napisać: &nazwa_zmiennej.[/tutorial] |
Link do lekcji: http://kursy.ddt.pl/?LessonId=20 |
|
DejaVu |
» 2008-11-13 10:35:10 manfred: wyobraź sobie, że osoba która zadała pytanie uczy się swojego pierwszego języka (czyli C++). Zobacz ile użyłeś pojęć, które są związane stricte z assemblerem i co możesz zrozumieć z Twoich zdań wykluczając ze swojego słownika wszystkie pojęcia związane z Assemblerem (segment/offset), oraz coś takiego jak sposób prezentacji danych w programie i jak faktycznie dane są przetwarzane przez program. Nie wspomnę już o instrukcjach, które użyłeś.
|
|
Fletcher Temat założony przez niniejszego użytkownika |
» 2008-11-13 18:05:57 A czy teraz dobrze to kumam? #include <iostream> #include <conio.h> using namespace std; int main() { int zmienna1 = 213; int tablica[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; struct { int liczba; long long duzaLiczba; } struktura; cout << "Adres zmienna1=" <<& zmienna1 << endl << endl; cout << "Adres tablica=" <<& tablica << endl; cout << "Adres tablica[0]=" <<& tablica[ 0 ] << endl; cout << "Adres tablica[1]=" <<& tablica[ 1 ] << endl << endl; cout << "Adres struktura=" <<& struktura << endl; cout << "Adres struktura.liczba=" <<&( struktura.liczba ) << endl; cout << "Adres struktura.duzaLiczba=" <<&( struktura.duzaLiczba ) << endl; getch(); return( 0 ); } Czyli &zmienna1 pobiera jakiś adres czyli wskaźnik? #include <iostream> #include <conio.h> using namespace std; int main() { long long zmienna = 213; long long * wskaznik =& zmienna; cout << "&zmienna=" <<& zmienna << endl; cout << "wskaznik=" << wskaznik << endl; getch(); return( 0 ); } teraz jeżeli będziemy używać "wskaznik" to będzie wyświetlać się adres z zmiennej "zmienna". #include <iostream> #include <conio.h> using namespace std; int main() { long long zmienna = 213; long long * wskaznik =& zmienna; cout << "zmienna=" << zmienna << endl; cout << "*wskaznik=" <<* wskaznik << endl; getch(); return( 0 ); }
Tu po prostu otrzymamy dane jakie przypisano do wskaznika poprzez "&zmienna" |
|
Fletcher Temat założony przez niniejszego użytkownika |
» 2008-11-13 19:13:54 chodziło mi tylko o komentarz pod kodem, kod skopiowany z kursu :) |
|
manfred |
» 2008-11-13 08:02:35 <<delete>> |
|
manfred |
» 2008-11-13 14:07:05 Już chyba tak mam, że wyjaśniam najbardziej niskopoziomowo jak tylko się da. Niemniej, <<delete>>. |
|
manfred |
» 2008-11-13 18:35:48 Jeśli się kompiluje i dobrze działa to tak. |
|
« 1 » 2 |