Article View: chile.comp.programacion
Article #3770Re: que error tiene este codigo??
From: Leonardo Herrera
Date: Tue, 31 Aug 2004 15:24
Date: Tue, 31 Aug 2004 15:24
46 lines
2453 bytes
2453 bytes
Cristian Gutierrez wrote:
> kitim@porta.com wrote:
>
> [...]
>
>
>>alguein podria corregir cual es el error??
>
>
> Ya te lo mencionaron: estas tratando de comparar chars con strings ("a"
> es un string), lo cual no tiene mucho sentido, pero tu compilador se lo
> traga de todas formas. Y aparte de eso:
>
> * Tienes lo que parece ser un `buffer overflow' (scanf no verifica que
> `frase' tiene a lo mas 80 posiciones de memoria para escribir).
>
> * Consideras todo lo que no es vocal como consonante, lo que se traga
> numeros, signos de puntuacion, etc.
>
> * Subjetivamente hablando, como que el codigo no tiene mucha
> estetica... :o)
>
> Me tome la libertad de corregir los tres puntos anteriores, y el
> resultado fue este:
>
> ,----[ vocals.c ]
> | #include <stdio.h> /* __ _ ___(_) ___ _ _ */
> | #include <string.h> /* / _` |/ _ \ |/ _ \| | | | */
> | #include <ctype.h> /* | (_| | __/ | (_) | |_| | */
> | #define BUFSIZE 1024 /* \__,_|\___|_|\___/ \__,_| */
> | #define CHECK(x) ((x==0)||(x==4)||(x==8)||(x==14)||(x==20))
> | int main(){ char buf[BUFSIZE]; char *p, num[2]={0,0};printf
> | ("? "); fgets(buf,BUFSIZE,stdin); for(p = buf; *p ; p++) if
> | (isalpha(*p)) num[(CHECK(*p-65)||CHECK(*p-97))] ++; printf(
> | "%d\tvocales\n%d\tconsonantes\n",num[1],num[0]); return 0;}
> `----
>
> No es muy mantenible que digamos... pero al menos esta super bien
> comentado :-D
BTW, ayer salieron los resultados del IOCCC :-)
--
Leonardo Herrera
http://pipes.epublish.cl
Technical Details
Message-ID:
<2pjj6pFlkf0bU1@uni-berlin.de>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!not-for-mailReferences:
<ch03mh$olt$1@news1.nivel5.cl> <87eklob0wt.fsf@guti.no-ip.org>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,ffd4a227553950c8 X-Google-Attributes: gid1593cb,public X-Google-Language: SPANISH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!not-for-mail From: Leonardo Herrera <leus@epublish.cl> Newsgroups: chile.comp.programacion Subject: Re: que error tiene este codigo?? Date: Tue, 31 Aug 2004 11:24:33 -0400 Lines: 46 Message-ID: <2pjj6pFlkf0bU1@uni-berlin.de> References: <ch03mh$olt$1@news1.nivel5.cl> <87eklob0wt.fsf@guti.no-ip.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Trace: news.uni-berlin.de dmTUB1VJc7AUacocxvKIEgUBSscnjOYYdyYtN/4jzk9BuCH2zH User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040803 X-Accept-Language: en-us, en In-Reply-To: <87eklob0wt.fsf@guti.no-ip.org>