Názory ke článku C++ – Hello World
Chtel bych jen upozornit, ze <b>std</b> neni zadny nazev kihovny, nybrz jen nazev jmenneho prostoru(velice zjednodusene jmenny prostor umoznuje mit stejne nazvy promennych, trid, funkci v jednom zdrojaku).
namiesto
"#include <iostream>" a vypisovanim "std::cout <<"
by nebolo lepsje
"#include <iostream>" "using namespace std;"
a vypisovalo by sa "cout <<"
sa len pytam =)
Niekedy nie je moc vyhodne spristupnovat cely okruh (namespace).
Spristupnuje sa iba to co budes vyuzivat:
using std::cin;
using std::cout;
using std::endl;
Ano suhlasim skor s tebou pre prehladnost programu je lepsie using std::cout ale dakujem za komentar:-)
keď chcem používať príkazy printf scanf, tak namiesto:
using std::cin;
using std::cout;
mám, čo napísať???
Nemusite nic. Kdyz se podivate do implementace napr. cstdio, tak tam uvidite(patrne to bude zaviset na tom, jaky prekladac pouzivate, ale domnivam se, ze to bude ve vetsine pripadu stejne):
<pre>
.....
#include <stdio.h>
...
#undef printf
....
namespace std{
...
using ::printf
}
....
</pre>
Cili z toho je patrne, ze kdyz napisete std::printf, tak se nakonec vola klasicky printf. Je to spise otazkou vkusu, navic pri praci na velkych projektech se vam zarucene nebude porad chtit psat nazvy namespacu pred promenne, tridy, funkce, atd.
Ted se tak koukam, ze se vam neodpovedel. Klidne muzete napsat
using std::printf;
nebo klasicky zavolat:
std::printf(...);
nebo nepsat, jak uz jsem se zminil vyse, nic.
Vo Visual C++ sa pise iba printf() cize aj ja tuto syntax odporucam je najrychlejsia a najprehladnejsia:-)
Chcel by som sa vas opytat mam Dev-C++ 4.9.9.2 a som sa drzal vasho navodu napisal som podla vas kod a a skompiloval som ho a ked ho dam spustit tak my blykne cierna obrazovka ale sa my zda ze tam pise zadany text
co stim aby prikazovy riadok ostal dlhsie za radu dakujem
tohle se tu řešilo už nespočetněkrát,
<pre>
...
cin.get();
cin.get(); //na konci funkce main
return0;
}
</pre>
a teraz predpokladaj, ze potrebujes trochu poupravit program a namiesto cout to pisat vsetko niekam do suboru.
mas 2 moznosti ... bud:
ifstream vystup ("text.txt");
a prepises vsetko odznova a vymenis vsetky cout za vystup, alebo ..
zakomentujes
using std::cout;
a nazves :
ifstream cout ("text.txt");
ono je pravda ze tento novy identifikator by prekryl ten zo std, ale v programe by si mal o jednu dost velku nejasnost viac a bolo by to odost menej citatelne == ak by si mal nejaku primitivnu chybu niekde sposobenu platnostou identifikatorov (napr v nejakej funkcii by si pouzival std::cout tak ten by uz nesiel do suboru, ale na cout pretoze platnost ifstream vystup ("text.txt") je iba v main() a using std::cout; predpokladam ze by si napisal pre globalnu platnost )
v mensich projektoch v ktorych sa este printf (z nejakeho divneho dovodu moze vyskytovat) staci dat za definicie/deklaracie using
#include <stdio.h>
a prinft/scanf/atd ...
budu spristupnene pre cely program
pred return napis bud:
std::cin.get();
alebo:
system("PAUSE");
odporucam druhu variantu pretoze ta prva ak pracuje program aj so vstupom nielen vystupom najprv zhltne '\n' ktory ostal v buffer-i.
cize ak pracujete aj so vstupom tak by ste museli dat
cin.get(); cin.get();
2x aby jedno si poradilo s bufferom a druhe cakalo kym sa rozhodnete ukoncit program.
ta druha variatna vyvola systemovy prikaz na pozastavenie programu do stlacenia lubovolnej klavesy.
Pouzivam Cev-C++ a ked chcem spustit program, teda dam Run, tak mi vyhodi ze Source file not complied... aj ked dam complie, a potom run, aj vtedy to vypise... neviem si s tym rady a prakticky neviem dokoncit ziaden program.. prosim pomozte...
preinstaluj devcpp, nainstaluj SDK, popr. zkus free Visual Studio 2005 Express
30. 10. 2007
To je demence kdybyste aspon napsali program a psali ty scripty tak jak maj bejt hruza.
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik :smile2:
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik :smile2:
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik :smile2:
3. 1. 2008
akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik :smile2:
ja píše:
Si v pohode? Ved si precitaj komentare o trochu vyssie no a tam uvidis, ze tento problem sa uz riesil! :smile12:akoze skusal som napis ten "program" ahoj svet a tak anpisem vsetko je v pohode ale ked mi ho am spustis tak mi to iba blikne a dost poradte ze kde je chyba dik :smile2:
23. 11. 2008
Reagoval na komentář od uživatele simusko :
pred koncom programu zavolaj funkciu system("PAUSE");
16. 7. 2009
Při napsání do programu wxdev tyto znaky :
#include <iostream>
int main()
{
std::cout << "Ahoj svete\n";
return 0;
}
vyhodí chybu 00553656 > mov edx, [edx+$40]
Když použiju jiný program Gentee tak to zas ukazuje chybu tuhle :
Line: 3 Pos: 1 Unknown Gentee command int .
Programy jedou pod Win 7 ,jestli to není tím .
6. 3. 2010
Caute. Ja pouzivam Code::Blocks lebo je fakt dobry... zatial najlepsi co som skusal...