[ SiN_MaFiJe @ 28.11.2004. 15:04 ] @
E ovako tek sam poceo da "ucim" da programiram u c++ i nesto me neide u stvari mene ide ali me kompajler za****va :( E ovako problem je kad ja napisem neki kod npr. nije to sad neka programicina nego ono ... kao sto reko tek sam poceo i neam blage veze

int main()
{
cout << "Dali sam ja master u cs-u(D,N) ;
char* odgovor ;
cin >> odgovor ;
if (odgovor == d) {
cout << "Da jesam master sam "
}
}
ima jos ali to nije bitno problem je u tome sto kad ja pokrenem program on mi pokaze dali sam ja master ... i kad stisnem d ili n on samo izadje nista ne pokaze
sad dali ja negde gresim ili je neki bug nesto to mi vi recite ???
[ SiN_MaFiJe @ 28.11.2004. 15:12 ] @
I evo sad sam nesto bio napisao nesecam se i pise mi nesto missing terminaring < character tako nesto
[ Shadowed @ 28.11.2004. 15:15 ] @
Probaj da otvoris cmd.exe i da odes do direktorijuma gde se nalazi .exe fajl i onda ga pokrenes. Problem je sto se kozola zatvori odmah nakon izvrsavanja tvog programa pa izgleda kao da se rad programa prekinuo.
[ sharpshooter @ 28.11.2004. 15:36 ] @
int main()
{
char odgovor;

cout << "Da li sam ja master u cs-u(D,N)" ;
cin >> odgovor ;
if (odgovor == 'd') {
cout << "Da jesam master sam ";
}
}
[ brcha @ 28.11.2004. 16:04 ] @
ovo što šarpšuter reče će ti rešiti problem.

ali, ono što sam ja hteo da napomenem je sledeće:

ti si napisao
Code:

...
char * odgovor;
cin >> odgovor;
...


e, pa, to ti neće nikada proći jer učitavaš u nealocirani pointer, koji u zavisnosti od kompajlera može da bude inicijalizovan sa nulom ili sa nekim random brojem. to znači da će na DOS-u sistem verovatno da se ukuca, a na windows-u, linux-u, mac os-u i sl će sistem da te otera u ... i ubije ti program.

moraš prvo da alociraš taj pointer kao niz da bi ga koristio:
Code:

...
char * odgovor;
odgovor = new char[<velicina>];
cin >> odgovor;
...


što opet nije dobro rešenje jer cin može da učita više karaktera nego što je tvoja veličina niza, pa bi trebalo da koristiš neku pametniju metodu koja ima ograničenje na broj karaktera.

ali, za tvoj primer, naravno, nije ni potreban niz karaktera nego samo jedan karakter, tako da je, kao što rekoh na početku, ovo što je šarpšuter napisao ok.

[filmil: uklonjen OT.]
[ SiN_MaFiJe @ 28.11.2004. 16:31 ] @
Ok tnx momci nemam net tako da moram to da probam sve sto ste rekli kuci:( ako nebude htelo opet imam neki osecaj da cu razbiti komp :)) Ali ipak hvala
[ Dragi Tata @ 28.11.2004. 17:07 ] @
Code:

#include <string>
#include <iostream>
using namespace std;

int main()
{
cout << "Da li sam ja master u cs-u? (D,N)" ;
string odgovor ;
cin >> odgovor ;
if (odgovor == "d") {
  cout << "Da jesam master sam " 
  } 

[ leka @ 29.11.2004. 00:02 ] @
Sta ako neko bukvalno shvati ono (D,N) i kuca "D" umesto "d" ? ;)
[ overdose @ 29.11.2004. 09:05 ] @
Code:

#include <string>
#include <iostream>
using namespace std;

int main() {
  while (1) {
    cout << "Da li sam ja master u cs-u? (D,N)" << endl;
    string odgovor ;
    cin >> odgovor ;
    if (odgovor == "d" || odgovor == "D")  {
      cout << "Da jesam master sam !" << endl;
      break;
    }
    else if (odgovor == "n" || odgovor == "N") {
      cout << "Ne nisam master !" << endl;
      break;
    }
    else
      cout << "Nije dat nijedan od ponudjenih odgovora !" << endl;
  }
}
[ SiN_MaFiJe @ 02.12.2004. 11:15 ] @
E tnx momci probao sam i bio je u pravu Shadowed moram sam da udjem u cmd.exe bla bla ali sad me jebe nes drugo ali to nije ni bitno tnx