Forklaring påto elementer i C++

Tags:    c++

Hej i forummet.
Jeg trænger til en forklaring på to elementer, som jeg skal bruge i et projekt.
Hvad gør helt konkret "&" - hvad er forskellen på denne og "*"? Evt. kom bidrag et kort eksempel.
Det andet spørgsmål drejer sig om, når jeg laver en do-while løkke, og vil afslutte denne med et ord, fx Ja eller Nej. Jeg har fået det til at fungere med tal; her kommer et brudstykke af mit program:
_________________________________
person x;
int stop = 0;

do{
cout << endl << "tast navn";
cin >> x.navn;
cout >> "Flere Personer?"<< endl;
cin >> stop;
type.push_back(x);
} while (stop > 0);

_________________________________

, hvor jeg så vil have det til at fungere fx et "Ja" og "Nej", fremfor et tal.

På forhånd, tak
Mvh. MEO



& bliver brugt til flere ting:
1: Tage adressen på.
2: Til at lave referencer

* bliver brugt til:
At få indholdet af
2: At lave pointere

Et eksempel:
int* ip;
Her er ip en "pointer til int", den peger ikke på noget.

Vi kan så sætte ip til at pege på noget:
int i = 123;
ip = &i;
Nu peger ip på i.

Vi kan så tage indholdet af ip, dvs. i:
std::cout << *ip << std::endl;
Som vil udskrive 123

Med referencer:
int i = 321;
int& ir = i;
Bemærk at referencer altid referer til noget.
Vi kan så udskrive:
std::cout << ir << std::endl;
Som vil udskrive 321


Med hensyn til "ja" og "nej":
std::string st;
do
{
...
std::cin >> st;
}
while(st == "Ja" || st == "ja");



skal lige nævnes at '&' også har en function som binær operator fx.
(AND &)
1 & 1 = 1
1 & 0 = 0

ligeledes er der andre binære opereatorer som:
OR |
XOR ^
NOT !



skal lige nævnes at '&' også har en function som binær operator fx.
(AND &)
1 & 1 = 1
1 & 0 = 0

ligeledes er der andre binære opereatorer som:
OR |
XOR ^
NOT !

hehe...så må vi vel også heller sige at * også betyder 'gange' :-)

5 * 10 = 50



t