gcc - vyhodnoceni podminek
Robert Heryan
rheryan na cominfo.cz
Úterý Listopad 3 14:16:01 CET 1998
Zdravim!
V uvedenem prikladu byla chyba v
printf("Err\n", *param[1]);
jak ostatne uvedli BranoZ a Jacek Kopecky. Ta se tam dostala pri
modifikaci
prikladu. Ma chyba. Cely problem lezel jinde. Puvodni podminka totiz
vypadala
asi takto:
if(count > 1 && *param[1] == 'a' || *param[1] == 'h'){
ovsem, ze autor (ne ja) udelal chybu; mela vypadat:
if(count > 1 && (*param[1] == 'a' || *param[1] == 'h')){
coz jsem ja prehledl (ma chyba) a zkousel se to svalit na gcc.
Samozrejme zcela neopravnene. Jeste mala perlicka. Tato chyba se
neprojevila
po kompilacich na systemech tak zvucnych jmen jako je AIX, HP-UX, SCO a
mozna i
dalsi.
Jeste bych se chtel zeptat pana Pavla Kankovskeho, jak se citi po svem
vyroku.
Ne, ze bych byl zrovna prebornik v programovani, ale par takovych
podminek jsem
uz napsal. Treba si to taky nekdy zkusi?!
Robert Heryan wrote:
>
> Zdravim!
>
> Nemohl by nekdo poradit?
>
> Mam programek:
>
> include <stdio.h>
> main(int count, char *param[]){
> if(count > 1 && *param[1] == 'a'){
> printf("OK\n");
> }
> else{
> printf("Err\n", *param[1]);
> }
> }
>
> No a pri vyhodnoceni podminky to udela core. (Samozrejmen, kdyz to
> pustim bez
> parametru). Nejspise to bude nastavenim gcc, ale v manu jsem nic
> nenasel.
> Diky.
>
--
Robert Heryan
Cominfo a.s.
Linux server Red Hat 5.0
rheryan na cominfo.cz
Další informace o konferenci Linux