Tavoite: Opin käyttämään C++:n osoittimia.
Ohjeita: Tarkastele esimerkkikoodeja ja merkitse todet väittämät.
Tarkastele alla olevaa koodia:
1int x = 3; 2int* ptr = &x; 3cout << ptr << endl; 4cout << *ptr << endl;
Valitse todet väittämät yllä olevan koodin perusteella.
Riviltä 3 tulostuu 3
Riviltä 3 tulostuu heksadesimaaliluku (0x-alkuinen)
Riviltä 4 tulostuu 3
Riviltä 4 tulostuu heksadesimaaliluku (0x-alkuinen)
Ei tulostu mitään, rivillä 2 on virhe
1int x; 2int* ptr = &x; 3x = 4; 4cout << ptr << endl; 5cout << *ptr << endl;
Riviltä 4 tulostuu 4
Riviltä 5 tulostuu 4
Riviltä 5 tulostuu heksadesimaaliluku (0x-alkuinen)
1int x; 2int* ptr = &x; 3*ptr = 4; 4cout << ptr << endl; 5cout << *ptr << endl;
Ei tulostu mitään, rivillä 3 on virhe
1int x; 2int* ptr = 4; 3cout << ptr << endl; 4cout << *ptr << endl;
Riviltä 3 tulostuu 4
1int x; 2int* ptr = &x; 3x = 5; 4cout << ptr << endl; 5cout << *ptr << endl; 6cout << x << endl; 7cout << &x << endl;
Riviltä 4 tulostuu 5
Riviltä 5 tulostuu 5
Riviltä 7 tulostuu heksadesimaaliluku (0x-alkuinen), joka on eri luku kuin aiemmin tulostettu (jos sellainen jo tulostettiin)
Riviltä 7 tulostuu heksadesimaaliluku (0x-alkuinen), joka on sama luku kuin aiemmin tulostettu (jos sellainen jo tulostettiin)