Stránka: 1 z 1
| [ Príspevkov: 12 ] | |
Autor | Správa |
---|
Registrovaný: 28.08.07 Prihlásený: 12.12.24 Príspevky: 957 Témy: 55 | 55 Bydlisko: Brezno |
Takaze robis semestralnu pracu v Dec-C++ v C-cku, na ovladanie programu sluzia vyhradne cisla ktore nacitavam z klavesnice do premennej typu int potrebujem podmienku aby po zadani pismen nespadol program, malo by to byt formou podmienky ... za navrhy vdaka
|
|
Registrovaný: 17.11.06 Prihlásený: 31.12.07 Príspevky: 677 Témy: 9 | 9 |
atoi() si skúšal?
Kód: //---------------------------------------------------------------------------
#include <stdio.h> #include <stdlib.h> #pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused int main(int argc, char* argv[]) { char a[20];
scanf("%s",&a); //nacitam ako retazec (atoi(a)) ? printf("%d\n",atoi(a)) : printf("toto nie je cislo\n"); //ak ide previest tak prevediem, inak je chyba system("pause"); return 0; } //---------------------------------------------------------------------------
|
|
Registrovaný: 28.08.07 Prihlásený: 12.12.24 Príspevky: 957 Témy: 55 | 55 Bydlisko: Brezno |
super taketo nieco som hladal .. diki
|
|
Registrovaný: 10.07.07 Prihlásený: 02.11.17 Príspevky: 1060 Témy: 0 | 0 Bydlisko: Bratislava |
napriklad:
ale
int main(int argc, char* argv[])
je parametrizovanie prikazoveho riadku, so vstupom ..cize bez tohto rozsireneho main
_________________ Nebo je modre, voda je mokra... |
|
Registrovaný: 17.11.06 Prihlásený: 31.12.07 Príspevky: 677 Témy: 9 | 9 |
ja som si to zvykol nemazať a vždy to v mojích programoch ošetrím či nejaké parametre boli. Osobne spúšťam velá konzolových aplikácii z cmd a ak to tam aj je a nedáš parametre nič sa nedeje, tak načo to mazať?
|
|
Registrovaný: 10.07.07 Prihlásený: 02.11.17 Príspevky: 1060 Témy: 0 | 0 Bydlisko: Bratislava |
co zamyslas neviem, len som cital kod
_________________ Nebo je modre, voda je mokra... |
|
Registrovaný: 28.08.07 Prihlásený: 12.12.24 Príspevky: 957 Témy: 55 | 55 Bydlisko: Brezno |
Roberbo píše: napriklad: ale int main(int argc, char* argv[]) je parametrizovanie prikazoveho riadku, so vstupom ..cize bez tohto rozsireneho main
pls co znamena ta posledna veta s parametrizovanim ... treba to osetrenie dako pozmenit ? thx
|
|
Registrovaný: 17.11.06 Prihlásený: 31.12.07 Príspevky: 677 Témy: 9 | 9 |
ide o to, že konzolové aplikácie môžeš spustiť s parametrom z príkazového riadku, napríklad napíšeš do príkazového riadku ping 192.183.122.186 tak spustí program ping.exe a ako parameter mu pošle túto IP. To môžeš spraviť aj vo svojom programe.
Kód: int main(int argc, char* argv[]) argc je typu int a znamená počet parametrov (potom v cykle prejdeš každý jeden) a argv[] je pole týchto parametrov. Ak ich necheš používať tak jednoducho zmeníš hlavičku na int main() a to je všetko (alebo ju ani nemusíš meniť)
|
|
Registrovaný: 28.08.07 Prihlásený: 12.12.24 Príspevky: 957 Témy: 55 | 55 Bydlisko: Brezno |
audiotrack píše: ide o to, že konzolové aplikácie môžeš spustiť s parametrom z príkazového riadku, napríklad napíšeš do príkazového riadku ping 192.183.122.186 tak spustí program ping.exe a ako parameter mu pošle túto IP. To môžeš spraviť aj vo svojom programe. Kód: int main(int argc, char* argv[]) argc je typu int a znamená počet parametrov (potom v cykle prejdeš každý jeden) a argv[] je pole týchto parametrov. Ak ich necheš používať tak jednoducho zmeníš hlavičku na int main() a to je všetko (alebo ju ani nemusíš meniť)
a ako to pls zmenim aby vstup nebolo pole ale iba jeden znak/cislo lebo v tom osetreni je nacitavane pole znakov a ja to potrebujem iba pre jeden s ktorym pracuju dalsie operacie aby som to nemusel cele prerabat
|
|
Registrovaný: 17.11.06 Prihlásený: 31.12.07 Príspevky: 677 Témy: 9 | 9 |
Kód: char a[20]; zameň za Kód: char a; Kód: scanf("%s",&a); //nacitam ako retazec zameň za Kód: scanf("%c",&a); //nacitam znak
a keď si sa pustil do semestrálky tak takéto veci by si mal vedieť
|
|
Registrovaný: 02.09.05 Prihlásený: 17.11.10 Príspevky: 154 Témy: 1 | 1 |
EndersoN píše: Takaze robis semestralnu pracu v Dec-C++ v C-cku, na ovladanie programu sluzia vyhradne cisla ktore nacitavam z klavesnice do premennej typu int potrebujem podmienku aby po zadani pismen nespadol program, malo by to byt formou podmienky ... za navrhy vdaka
Ano mozes jednuducho, fcia scanf() typom int vracia pocet uspesne precitanych hodnot... cize napr :
Kód: int asdf, int hjkl; if (scanf("%d %c", &asdf, &hjkl) == 2) printf("spravne zadane\n");
pri vstupe 10, "c" vypise text "spravne zadane"...
|
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | 4 |
sa som to robieval tak, ze som cely riadok(vstup) nacital do retazca:
char txt[111];
scanf("%s", txt);
a potom som rozoberal retazec txt;
- ak to mal byt int, tak tam nesmel byt iny znak, nez '0' .... '9'
- ak tam malo byt viac cisel, oddelenych napr. medzerou, tak som rozdelil ten retazec na viac retazcov, pricom v kazdom bolo uz len 1 cislo
napis presne, ako sa ma zadavat vstup, potom sa da uz lepsie daco vymysliet...
|
|
Stránka: 1 z 1
| [ Príspevkov: 12 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v PHP, ASP | 8 | 512 | 02.11.2012 18:42 DeiForm | | v Delphi, Visual Basic | 4 | 940 | 26.01.2009 18:39 ovvo | | v Assembler, C, C++, Pascal, Java | 2 | 362 | 01.02.2016 20:14 faraon | | v Správy pre vedenie fóra | 5 | 1178 | 28.10.2009 19:04 Jaro | | v Delphi, Visual Basic | 22 | 676 | 12.12.2015 21:11 camarovk19 | | v PHP, ASP | 2 | 547 | 25.01.2010 16:36 Slappy | | v Biosy a ladenie výkonu | 4 | 3795 | 27.01.2013 12:56 shiro | | v Assembler, C, C++, Pascal, Java | 2 | 595 | 25.11.2009 12:43 dEVIANT | | v PHP, ASP | 4 | 518 | 04.02.2010 17:00 d0.0b | | v Assembler, C, C++, Pascal, Java | 3 | 525 | 04.06.2010 13:17 jarrro | | v JavaScript, VBScript, Ajax | 4 | 597 | 05.06.2009 21:06 chrono | | v Assembler, C, C++, Pascal, Java | 5 | 526 | 13.11.2011 16:14 walther | | v Chladiče a všetky druhy chladenia | 12 | 800 | 03.08.2011 13:44 zalgoo | | v PHP, ASP | 6 | 514 | 10.11.2012 10:42 xxx9955 | | v Assembler, C, C++, Pascal, Java | 11 | 835 | 14.12.2008 11:54 Blackshadow | | v PHP, ASP | 3 | 538 | 13.05.2013 19:12 BX |
|