Šta je novo?

C++ pitanje: <iostream.h>

morfnaom

Čuven
Učlanjen(a)
19.03.2002
Poruke
99
Poena
609
Zasto u Borlandu C++ kompajleru kada povzovem #include <iostream.h> i kasnije se na njega pozovem komandom cout DOS-ov prozor gde se iscrtavaju znakovi se pojavi samo sekund na ekranu i onda nestane?

kada iz DOSprompta pozovem kompajilarni exe onda se bez problema vide znakovi definisani komadnom cout iz C++ koda (ali u ovom slucaju ekran nije cist nego se ti znakovi nastavlaju oposle dos-ovih komada)

Pozdrav!
 
Dodaj na kraju programa getchar()...NE zaboravi #include <conio.h>

XP i 2000 automatski zatvaraju konzolu. Takav je zivot :D
 
ja na tom kompu gde kompajliram imam win98. znaci i win98 automatski zatvara konzolu!?

Ako imas vremena da mi kazes (usteda truda, da ne gledam po helpu :) )
Sta pozivamo u pretprocesor sa #include <conio.h> ?
i sta je getchar()?

Pozdrav!
 
morfnaom je napisao(la):
Sta pozivamo u pretprocesor sa #include <conio.h> ?
Pozivamo C header "conio.h", koji sadrzi dodatne funkcije za konzolni rad (borlandov conio.h sadrzi i funkcije za menjanje boje teksta, pozadine, hvatanje jednog znaka brez potvrde Enterom itd.)

morfnaom je napisao(la):
i sta je getchar()?Pozdrav!
Funkcija za hvatanje znaka sa tastature. Primera radi:

Kod:
printf("Xelo vrld :)\n");
getchar();

ce ispisati tekst, a onda sacekati da udaris Enter da zavrsi program...

PS. Ja lepo pricam da treba uciti prvo C pa C++ :d
 
Da, mozda si u pravu, ali sada mi je potrebniji C++, a nekda u buducnosti cu se mozda (ako mi bude trebao) vratiti na C :)

U vezi tvog koda: U borlandu C++ v. 5.02 ako ukljucim samo <iostream.h> i <conio.h> nece da radi. gledajuci po dokumentaciji Borlanda nasao sam da je izgleda potrebo ukljuciti i <stdio.h>, tj da je neophodan samo <stdio.h> (u tvom primeru):

printf("Xelo vrld :)\n");
getchar();

kada <stdio.h> ne ukljucim, onda javlja da su funkcije printf i getchar() nedefinisane! (znaci da bi ovaj tvoj primer radio potrebno je pozvati SAMO <stdio.h>)

Isto vazi i kada za stampu koristimo cout! (neophodno je pozvati stdio.h (pored, normalno iostream.h), ali NE i conio.h)!!!

Znaci mozda je u Borlandu 5.02 drukcije nego u tvom komplajleru!


Onako usput pitnaje: Zasto kada ukucam tvoj kod mi posle Xelo vrld : stavi znak ">" (pise Xelo vrld : >) a \n bi trebao samo dati novi red?
 
A da, getchar() je u stvari macro za getc(stdin), koliko se secam, i pripada stdio.h, dok conio.h sadrzi getch i getche koji prihvataju znak po pritiskanju (ne cekaju enter).

Ovo drugo ne znam, mozda sam nehotice napravio neki escape karakter :)
 
Voodoo_NBGD je napisao(la):
PS. Ja lepo pricam da treba uciti prvo C pa C++ :d
Kod:
cout << "Xelo vrld :)" << endl;
cin.get();
:p
 
Možda pomogne: ubaci <iostream>, znači bez .h na kraju, a ispod stavi liniju "using namespace std;", bez navodnika.
 
thunderchase je napisao(la):
Možda pomogne: ubaci <iostream>, znači bez .h na kraju, a ispod stavi liniju "using namespace std;", bez navodnika.

Ne, kada pozovem <iostream> (bez h) i stavim using namespace std; (kao sto si sugerisao) javlja mi da je "Namespace name expected". Stampam i u ovom slucaju sa cout << .....

@Voodoo_NBGD:
Da, u pravu si sada; <studio.h> ide sa getchar() (ispisuju se svi karakteri u konzoli, osim ENTER koji zatvara konzolu)
sa <conio.h> idu getch (na pritisak bilo kod karaktera se zatvara konzola pri cemu se ne vidi ispis tog karaktera u konzli) i getche (bilo koji karakter zatvara konzolu, ali se vidi pre zatvaranja njegov ispis u konzoli).

Hvala na odgovorima!

Ali imam jos jedno pitanje:
Zasto ne radi cin >> u Borlandu C++ 5.02 (vec mi polako ide na zivce ovaj kompajler koji ide bas u koliziju sa knjigom koju sledim, a i jako je neudoban za rad)i koja je uopste instrukcija za unos podataka u Borlandovom kompajleru????

Pozdrav!
 
Voodoo_NBGD je napisao(la):
Sto se lepo ne presaltas na nesto drugo? Ako nemas pare za Visual Studio, postoji besplatno a legalno resenje, odlicni Dev-C++:

http://www.bloodshed.net/dev/devcpp.html

Trenutna verzija 4.9.9.2

E hvala ti puno druze na ovome! instalirao sam taj dev-C++ i za sada mi super deluje. razvojno okruzenje je dosta modernije i intuitivnije od onog starg borlandovog. jedino sto je kompajler malo spor, ali ok... Da li bi se mogao ubrzati proces kompajlinga?

hvala na dosadasnjoj pomoci, ali bice jos pitanja uskoro :)

Pozdrav!
 
Sto ne probas Quincy 2002 ili noviju verziju (2005)??
 
Nazad
Vrh Dno