Autor | Zpráva | ||
---|---|---|---|
BlackMartin Profil |
#1 · Zasláno: 20. 1. 2008, 14:32:32
Dobrý den.
Předem se omlouvám že tento dotaz strkám do fóra o webovém programování, ale myslím si že tady dostanu odpověď. Mám tento zdroják : // start.cpp // Aplikaci napsal BlackMartin #include <iostream> using namespace std; int main() { cout << "\007DataSoft\n\n\n"; cout << "Zadejte jmeno:________ \b\b\b\b\b\b\b\b\b"; long name; cin >> name; cout << "\nZadejte pristupovy kod:________ \b\b\b\b\b\b\b\b\b"; long code; cin >> code; cout << "\aZadali jste jmeno:" << name << " a kod" << code << "\n\n\n"; cout << "\aJmeno a kod byl overen ! Pokracujte podle Planu Z3!\n"; cin.get(); cin.get(); return 0; } Pokaždé co aplikaci zkompiluji tak napíši jen jméno odentruji a pak už se mi app zavře. Kompiluji v Visual Studio C++ 2008 Express Nevíte kde je chyba ? |
||
Nox Profil |
#2 · Zasláno: 20. 1. 2008, 14:35:48
Sem na toto lama a Cčko sem neviděl ani nepamatuju, ale pokud chceš aby to počkalo, nemělo by tam být něco jako system("pause") ?
Možná je to blbost, ale risknu to;) |
||
Měsíček Profil |
#3 · Zasláno: 20. 1. 2008, 14:37:37
vícekrát dej cin.get(); a nebo to uzavři do smyčky while ;) nebo pomocí příkazu goto je mnoho možností.
|
||
BlackMartin Profil |
#4 · Zasláno: 20. 1. 2008, 14:45:16
Tak jsem to upravil na
// start.cpp // Aplikaci napsal BlackMartin #include <iostream> using namespace std; int main() { cout << "\007DataSoft\n\n\n"; cout << "Zadejte jmeno:________ \b\b\b\b\b\b\b\b\b"; long name; cin >> name; cin.get(); cout << "\nZadejte pristupovy kod:________ \b\b\b\b\b\b\b\b\b"; long code; cin >> code; cin.get(); cout << "\aZadali jste jmeno:" << name << " a kod" << code << "\n\n\n"; cout << "\aJmeno a kod byl overen ! Pokracujte podle Planu Z3!\n"; cin.get(); cin.get(); cin.get(); cin.get(); return 0; } Ale stejně to nefunguje. Viz. http://martindeveloper.ic.cz/files/Secret.exe BTW: Nox Mohl by jsi upřesnit ten příkaz ? |
||
Měsíček Profil |
#5 · Zasláno: 20. 1. 2008, 14:47:35
asi myslel
system("pause"); |
||
Měsíček Profil |
#6 · Zasláno: 20. 1. 2008, 14:48:03
, který udělá na chvíli stopku něco jako
" Pokračujte po kliknutí .. " |
||
BlackMartin Profil |
#7 · Zasláno: 20. 1. 2008, 14:53:03
Tak jsem to tam hodil a viz. http://martindeveloper.ic.cz/files/Secret2.exe
Když tam třeba napíšete ahoj tak už to nepustí kničemu dalšímu. |
||
Měsíček Profil |
#8 · Zasláno: 20. 1. 2008, 14:54:04
Mě ten program nejde otevřít, asi špatně kompiluješ pro architekturu :)
|
||
BlackMartin Profil |
#9 · Zasláno: 20. 1. 2008, 14:55:41
Mám tam Win32
|
||
Měsíček Profil |
#10 · Zasláno: 20. 1. 2008, 14:56:06
to nehraje roli ... dej to jako konzoli :)
|
||
BlackMartin Profil |
#11 · Zasláno: 20. 1. 2008, 14:59:37
Nešlo by trošku upřesnit kde to mám najít ?
V C++ nejsem žádný odborník ... |
||
Měsíček Profil |
#12 · Zasláno: 20. 1. 2008, 15:01:47
Tohle není otázka C++, ale otázka tvého programu Visual Studio C++ 2008 Express, kterej zduše nesnáším spíše si stáhni nějáký jiný jednodušší a zadarmo například stačí ti poznámkový blok a MinGW kde zadáš jen příkaz a samo se ti to zkompiluje, více se naučíš a půjde to jednodušší cestou.
Jdi na builder.cz tam to napiš do sekce c/c++ .. tam ti spíše poradí. |
||
BlackMartin Profil |
#13 · Zasláno: 20. 1. 2008, 15:03:32
OK Děkuju.
Mimochodem Visual Studio C++ 2008 Express je zdarma ;-) |
||
Měsíček Profil |
#14 · Zasláno: 20. 1. 2008, 15:15:12
Je, ale s minimem funkcí a je to hodně ostříhaná verze.
|
||
Mike8748 Profil |
#15 · Zasláno: 20. 1. 2008, 15:36:54
cout << "Zadejte jmeno:________ \b\b\b\b\b\b\b\b\b"; long name; cin >> name; ses si jistej ze chces jmeno jako cislo? |
||
BlackMartin Profil |
#16 · Zasláno: 20. 1. 2008, 15:41:17
aha :)
A jaký datový typ bych měl zvolit pro to jméno ? Popřípadně kdybych chtěl aby to jméno se skládalo z písmen i číslic. |
||
Měsíček Profil |
#17 · Zasláno: 20. 1. 2008, 16:05:53
přidat knihovnu a normálně string nebo char ..
|
||
los Profil * |
#18 · Zasláno: 20. 1. 2008, 16:32:27
BlackMartin
Z prúdu bajtov čítaš číslo, takže pri nesprávnom vstupe sa ten stream dostane do chybového stavu a každý ďalší pokus o čítanie z neho zlyhá. Ak by si použil std::string, tak sa biele znaky považujú za oddeľovač, s čím by si mal zrejme problém. Na čítanie po riadkoch je lepšie použiť funkciu std::getline. Na to, aby si mohol pracovať so std::string, musíš inkludovať hlavičkový súbor string. Príklady a dokumentácia - viď Google alebo MSDN. Měsíček > to nehraje roli ... dej to jako konzoli :) Z otázky je jasné, že to ako konzolovú aplikáciu už má. > Tohle není otázka C++, ale otázka tvého programu Visual Studio C++ 2008 Express Nezmysel. > například stačí ti poznámkový blok a ... No amen-tma. |
||
Měsíček Profil |
#19 · Zasláno: 20. 1. 2008, 16:36:38
> Tohle není otázka C++, ale otázka tvého programu Visual Studio C++ 2008 Express
Nezmysel. ne to není nesmysl, žel C++ není na takové úrovni, aby dokázalo hned vybrat indexy pro základ aplikace v tomto případě konzole místo Win32 (API), které bude fungovat na jiné architektuře velmi špatně neli vůbec. > například stačí ti poznámkový blok a ... No amen-tma. stačí. Lepší je samozřejmě CodeBlock, ale na takový malý skriptík tenhle windowsácký editor (budiž mu země lehká) bohatě vystačuje. |
||
los Profil * |
#20 · Zasláno: 20. 1. 2008, 16:55:54
Měsíček
Aha, už som pochopil, čo si tým chcel povedať. Prepáč, beriem späť. Každopádne, konzola JE Win32 aj napriek tomu, že neviem, čo je index pre základ aplikácie. > ale na takový malý skriptík tenhle windowsácký editor (budiž mu země lehká) bohatě vystačuje. Ak berie človek programovanie ako formu sebatrýznenia, tak určite áno. Ak má niekto VS2008 Express, tak odporúčať mu Notepad alebo v podstate čokoľvek iné, je také... ehm... divné. |
||
Časová prodleva: 3 měsíce
|
|||
java_script Profil * |
#21 · Zasláno: 17. 4. 2008, 11:38:45
co ten kod změnit takhle:
// start.cpp // Aplikaci napsal BlackMartin #include <iostream> #include <string> using namespace std; char znaky[4]={'\007','\n','\b','_'}; void carka(void); void zadano(void); const int pocet=9; int i; int main() { cout<<znaky[0]<<"Datasoft"; for(int i=0;i<3;++i){ cout<<znaky[1];} zadano(); system("pause"); return 0; } void carka(){ for(int a=0;a<pocet;++a){ cout<<znaky[3];}} void zadano(){ cout<<"Zadejte jmeno:"; carka(); for(int i=0;i<pocet;++i){ cout<<znaky[2];} string name; cin>>name; cout<<znaky[1]; cout<<"Zadejte heslo:"; carka(); for(int i=0;i<pocet;++i){ cout<<znaky[2];} string heslo; cin>>heslo; cout<<znaky[1]; cout<<"zadali jste: "<<name<<" a vaše heslo je: "<<heslo<<znaky[1]; } |
||
Gekon Profil |
#22 · Zasláno: 17. 4. 2008, 11:43:02
java_script
Úžasné. Náhodou ses nedíval, kdy to téma bylo založeno, že? |
||
java_script Profil * |
#23 · Zasláno: 18. 4. 2008, 00:08:56
že nikdo neporadil, s konkrétním případem ale jenom žvanil
|
||
los Profil * |
#24 · Zasláno: 18. 4. 2008, 09:26:39
A čítal si si to žvanenie? Bude tvoj program fungovať, aj keď meno alebo heslo obsahuje medzeru? (.eiN)
|
||
Časová prodleva: 4 dny
|
|||
Měsíček Profil |
Reaguji na java_scripte:
To co jsi poslal byl také menší žvást, fungovat to bude, ale špatně. |
||
Časová prodleva: 16 let
|
0