zacatecnik, dva dotazy

Honza Pazdziora adelton na informatics.muni.cz
Neděle Říjen 21 17:45:56 MEST 2001


On Sat, Oct 20, 2001 at 12:17:07PM +0200, Michal Jurosz wrote:

>     1) v apachi pod windowsama mi skript jel bez problemu. Po ulozeni na
> FreeBSD server vsak nefungoval spravne. Duvod jsem pozdeji odhalil.
> Interpret Perlu na FreeBSD jinak pracoval s porovnavanim promennych typu
> cislo a string pomoci eq. Musel jem eq nahradit =~, ale dosud mi neni 
> jasne proc.

Poslete ten kod.

> Existuji presna pravidla pro porovnavani cisla a retezce? Pripadne 

Ano.

> pomohlo by pretypovani promenny pred porovnanim? A jak se v Perlu provadi?

Zalezi na tom, v cem byl problem. Perl implicitne "pretypovani" podle
typu porovnani provadi.

Na cislo pomoci +0, na retezec pomoci . ''.

> 2) Jak spravne naprogramovat podminku, kde potrebuji porovnat zda je
> jedna promenna vetsi alespon o jednicku nez druha.
> if ($a > ($b + 1)) { ; }
> mi zvetsi promennou $b o jednicku, to ja ale nechci (v TPascalu to tusim 

Toto neni pravda (ze zvetsi o jednicku)

$ perl
$a = 4;
$b = 2;
if ($a > ($b + 1)) { print "ano\n"; }
print "[$a] [$b]\n";
__END__
ano
[4] [2]

Ten kod dela preste to, co pozadujete. Zvyseni o jednicku dela
operator ++.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
   .project: Perl, DBI, Oracle, MySQL, auth. WWW servers, DBD::XBase.
------------------------------------------------------------------------


Další informace o konferenci Perl