Portál AbcLinuxu, 30. dubna 2025 12:49

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
31.7.2006 09:41 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Odpovědět | Sbalit | Link | Blokovat | Admin
Hodnotit smysluplnost programu nebudu. Jen mě zaráží, že kvůli třicetiřádkovýmu programu, musím tahat celých 11 kB :-)

Popravdě jakmile jsem ve zdrojáku viděl třikrát ručně napsanou konstantu 256, přestal jsem to studovat.

Ale ať jsem tedy aspoň trochu konstruktivní:
  odpoved=(char*)malloc(sizeof(char)*256);
...
  for (i=0;i<=256;i++) 
        if (odpoved[i]=='\n') odpoved[i]='\0';
Stane se, no...
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
31.7.2006 11:45 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa

Nerozumiem presne co si tym chcel povedat, alebo to mam ku tvojej spokojnosti prepisat takto:

#define DLZKA

  odpoved=(char*)malloc(sizeof(char)*DLZKA);
...
  for (i=0;i<=DLZKA;i++) 
        if (odpoved[i]=='\n') odpoved[i]='\0';
31.7.2006 11:49 Kníže Ignor | skóre: 19 | blog: stoupa
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Možná mně vadí spíš to "<=" v tom for-cyklu, ale jsem hloupý, což ty dobře víš.
Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
31.7.2006 11:50 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Ok, uz vidim... vdaka...
31.7.2006 11:54 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
hmm, a mě se vždycky smějí za != ... přece si to budeme pamatovat, že mez je o jednu menší ... já si to nikdy nepamatuji, proto raději používám "nerovná se" ;-).
When your hammer is C++, everything begins to look like a thumb.
31.7.2006 11:50 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
To by samozřejmě bylo lepší z hlediska stylové čistoty, ale buffer overflow vám tam zůstal.
31.7.2006 11:10 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Odpovědět | Sbalit | Link | Blokovat | Admin
Builtin příkaz select se vám nelíbil?
31.7.2006 11:41 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Najaka ukazka by nebola ???, z manualu som nepochopil ako to mam pouzit...
David Watzke avatar 31.7.2006 11:44 David Watzke | skóre: 74 | blog: Blog... | Praha
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
help select
“Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
31.7.2006 11:48 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
# select ano in ano nie; do echo napisal si $REPLY; break; done
1) ano
2) nie
#? 2
napisal si 2

asi este stale nechapem, ako spravit aby ked dam 2 napisalo "napisal si nie"

31.7.2006 11:51 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
select ano in ano nie; do echo napisal si $REPLY; break; done
1) ano
2) nie
#? nie
napisal si nie
??
When your hammer is C++, everything begins to look like a thumb.
31.7.2006 11:52 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Aha, jak kdybych nic neřekl (pomalé vedení, celé ráno se na booku nastavuji s tomcatem, tak mě omluvte) :-)
When your hammer is C++, everything begins to look like a thumb.
31.7.2006 11:56 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
REPLY=`question "Otazka" -nodefault ano nie; echo napisal si $REPLY
Otazka (ano/nie): anoo (akoze preklep)
Otazka (ano/nie): ano
napisal si ano
Nieje to lepsie?
31.7.2006 11:59 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
je ;-)
When your hammer is C++, everything begins to look like a thumb.
31.7.2006 12:01 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
A co takhle místo REPLY použít tu proměnnou, do které jste si výsledek nechal uložit, tedy ano?
31.7.2006 12:27 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
select name in ano nie; do
    if [[ ! -z $name ]]; then
        echo napisal si $name
        break
    fi
done

1) ano
2) nie
#? 3
#? 4
#? 5
#? 2
napisal si nie
semo@nb ~ $    
If you hold a Unix shell up to your ear, you can you hear the C.
31.7.2006 11:49 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
select ano in ano nie; do echo napisal si $REPLY; break; done
1) ano
2) nie
#? 3
napisal si 3

hmm... nieje to to prave orechove...

31.7.2006 11:55 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Hodnotu odpovědi máte v proměnné ano, číslo v REPLY.
31.7.2006 12:12 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Odpovědět | Sbalit | Link | Blokovat | Admin

1. Na buffer overflow už jste byl upozorněn.

2. Nikde nevidím, že byste dealokoval pointer, který jste dostal malloc(). Jistě, systém to po vás uklidí, ale po vzoru klasika bych řekl: "To neděláš dobře, Jaromíre, jednou se ti to vymstí."

3. Parsování parametrů je velmi chaotické a neošetřuje spoustu situací, se kterými jste nepočítal. Např. pokud je použit přepínač '-nodefault', je '-nodefault' považováno i za platnou odpověď.

4. Vyžadovat, aby byl přepínač až za argumentem je dost neobvyklé a v tomto případě neopodstatněné.

5. Nemíchejte odsazování mezerami a tabulátory.

31.7.2006 13:16 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
vdaka za pripomienky
31.7.2006 13:18 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
vacsina chyb je dosledkom mojho stylu "cesta mensieho odporu"
31.7.2006 13:23 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: question - program na vstupy od užívateľa
Ono ani tak nejde o tento prográmek, tam je to celkem jedno. Jde spíš o to, abyste si nezvykl takto programovat, protože až jednou budete psát něco většího, bude mnohem těžší se tyto zlozvyky odnaučit.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.