Svejedno je da li pise cout<<8 ili cout<<"8". Jedino sto je po meni problem, to je ovo int main(). Mnogo je prikladnije void main().
Zdravo, svete-prvi program u C++
Zaključano
Zakačeno
izmenjeno 1 put, poslednji put Burgos 19.02.2005. u 16:50
Izmene poruke
- Burgos19.02.2005. u 16:50zapis iz teksta poruke
Pa nije baš svejedno
I probaj kompajlirati source nekim C++ kompajerom, pa ćeš videti šta ti kaže za void main()
A po meni (i po g++u) problem je ovde:
Kad je već naglašeno
using namespace std;
treba koristiti
#include <iostream>
umesto
#include <iostream.h>
I probaj kompajlirati source nekim C++ kompajerom, pa ćeš videti šta ti kaže za void main()
A po meni (i po g++u) problem je ovde:
Code:
#include <iostream.h> //Deklaracije tokova
using namespace std;
#include <iostream.h> //Deklaracije tokova
using namespace std;
Kad je već naglašeno
using namespace std;
treba koristiti
#include <iostream>
umesto
#include <iostream.h>
Citat:
IronTIRANIN: Mnogo je prikladnije void main().
To je zabranjeno standardom. Mora int main.
Potpis
Za one koji ne shvataju zašto nije svejedno da li je "8" i 8 (možda i takvih ima)
Izraz 8 + 8 vraća 16, a "8" + "8" vraća "88"
Izraz 8 + 8 vraća 16, a "8" + "8" vraća "88"
U ovom primeru je apsolutno svejedno da li je "8" ili 8. Odnosno i u jednom i u drugom slucaju ce ispisati isti tekst na ekranu.
A ovo oko izraza ti i nije bas tacno. Drugi izraz jedino moze da radi ako je levi operand tipa string jer je u toj klasi preklopljen operator + i on radi ovo sto si ti zamislio.
A ovo oko izraza ti i nije bas tacno. Drugi izraz jedino moze da radi ako je levi operand tipa string jer je u toj klasi preklopljen operator + i on radi ovo sto si ti zamislio.
Potpis
I drink to make other people interesting.
Zaboravio sam da posaljem ispravan kod:
Sledi primer kompajliranja+linkanja i izvrsavanja:
dejan@gnu ~/prj/cxx/es
$ make hello_world
g++ hello_world.cpp -o hello_world
dejan@gnu ~/prj/cxx/es
$ ./hello_world
Zdravo, svete! Danas imam 8 godina!
Code:
// C++ kod "prema standardima"
#include <iostream>
using namespace std;
int main()
{
cout << "Zdravo, svete! Danas imam "
<< 8 << " godina!" << endl;
return 0; // main() mora da vrati int vrednost!
}
// C++ kod "prema standardima"
#include <iostream>
using namespace std;
int main()
{
cout << "Zdravo, svete! Danas imam "
<< 8 << " godina!" << endl;
return 0; // main() mora da vrati int vrednost!
}
Sledi primer kompajliranja+linkanja i izvrsavanja:
dejan@gnu ~/prj/cxx/es
$ make hello_world
g++ hello_world.cpp -o hello_world
dejan@gnu ~/prj/cxx/es
$ ./hello_world
Zdravo, svete! Danas imam 8 godina!
Potpis
Citat:
//main mora da vrati int vrednost!
Po defaultu int funkcija u kojoj nema return vratiće 0, pa je taj red suvišan (jeste da će te kompajler upozoriti)
I imam jedno pitanje, da ne postavljam novu temu: Zašto me kompajler upozorava:
Warning: There is no newline at the end of file
EDIT:
Što se tiče 8 i "88" znam da se nisam dobro izrazio, tj. podrazumevao sam da je prvi broj tipa string.
Code:
#include <string>
#include <iostream>
int main()
{
std::string a = "8";
std::cout << a + "8";
}
#include <string>
#include <iostream>
int main()
{
std::string a = "8";
std::cout << a + "8";
}
Hm...Ispricavam se na netočnom navodu.Mislio sam da std::cout ispisuje samo varijable ili, ako nesto što se ispisuje nije varijabla, da treba ići u navodne znakove.
Citat:
Warning: There is no newline at the end of file
Mozda gresim, ali pre jedno 10 godina je bilo problema sa konstrukcijom tipa:
Code:
while not eof(f) do
while not eoln(f)
....
while not eof(f) do
while not eoln(f)
....
I kada je program dosao do kraja fajla u 2. petlji, tada naravno nije naiso na eoln nego na eof. Posto je trazio eoln a ne eof, ostao je u istoj petlji, i prilikom sledeceg citanja javljao je gresku da je dosao do kraja fajla, a ti bi ga jos citao. :)
Verovatno je to upozorenje ostalo od tog vremena.
Moguće. Ne vidim drugo objašnjenje...