Article View: es.comp.os.linux.programacion
Article #9162Problemas con caracteres.
From: quantium
Date: Fri, 30 Aug 2002 18:50
Date: Fri, 30 Aug 2002 18:50
58 lines
2752 bytes
2752 bytes
Hola a todos.
Tengo un peque�o problema que es el siguiente: estoy haciendo un
sencillo programa el cual pasa frases al codigo morse. Lo que hago es
sustituir letra por letra a morse. Pero ahora viene el problema, cuando
inserto un espacio en la frase lo que hago es utilizar \t para
traducirla: ejemplo:
./morse
hola mundo
���� --- �-�� .- -- ��- -� -.. ---
Pues bien, ahora hago:
./morse
hola mundo?
���� --- �-�� .- -- ��- -� -.. ---
Como podemos ver la interrogacion no ha sido sustituida por el valor
morse de este caracter, (��--��) ahora os pongo el codigo fuente:
#include <stdio.h>
main()
{
int i,b,valor;
char frase[200];
char letras[]={'a','b','c','d','e','f','g',
'h','i','j','k','l','m','n',
'o','p','q','r','s','t','u',
'v','w','j','y','z',' ','?'};
char *morse[]={".-","-...","-.-.","-..",".","��-�","--�",
"����","��","�---","-�-","�-��","--","-�",
"---","�--�","--�-","�-�","���","-",
"��-","���-","�--","-��-","-�--","--��","\t","��--��"};
fgets(frase,200,stdin);
printf("\n\n");
for(i=0;i<strlen(frase)-1;i++) {
for(b=0;b<27;b++) {
if(frase[i]==letras[b]) {
printf("%s ",morse[b]);
}
}
}
printf("\n\n");
}
Pero ahora os cuento una cosa curiosa, si quito en char letras[] el
caracter del espacio -> ' ' <- (el penultimo) y tambien si quito en
char *morse[] el tabulador "\t" pues ahora si me pilla el signo de
interrogacion ?
�A que se debe esto? Venga un saludo a todos :-)
Technical Details
Message-ID:
<3D6FBE6D.6090200@lycos.es>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fu-berlin.de!uni-berlin.de!234-madr-x23.libre.retevision.ES!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,44ee7efd783c31d1,start X-Google-Attributes: gidf86c8,public X-Google-ArrivalTime: 2002-08-30 11:50:23 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fu-berlin.de!uni-berlin.de!234-madr-x23.libre.retevision.ES!not-for-mail From: quantium <quantium@lycos.es> Newsgroups: es.comp.os.linux.programacion Subject: Problemas con caracteres. Date: Fri, 30 Aug 2002 20:50:21 +0200 Lines: 59 Message-ID: <3D6FBE6D.6090200@lycos.es> NNTP-Posting-Host: 234-madr-x23.libre.retevision.es (62.83.14.234) Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Trace: fu-berlin.de 1030733421 54684650 62.83.14.234 (16 [129971]) User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0rc3) Gecko/20020523 X-Accept-Language: en-us, en