Autor
|
Tema: ¿Por qué no se muestran las tildes y "caracteres especiales" en C? (Leído 20,009 veces)
|
Aikanáro Anário
|
Al imprimir líneas de texto en un programa en modo consola, las tildes, signos de exclamación/interrogación y otros no se muestran correctamente y se sustituyen por otros raros :S ¿Por qué pasa eso y cómo se puede arreglar?
|
|
|
En línea
|
|
|
|
Oblivi0n
Desconectado
Mensajes: 392
Odio las ranas.
|
creo que es porque por defecto usas ASCII, y este no contiene caracteres con tildes y demas, te dejo la tabla ASCII http://www.webtutoriales.com/images/tutoriales/tabla_ascii.gifPara imprimir tildes y otros caracteres, deberias de usar unicode, pero ahora mismo desconozco si se puede usar unicode con ANSI C
|
|
|
En línea
|
|
|
|
Aikanáro Anário
|
Se usa ASCII por defecto en el compilador, dependiendo del programa, en el código, en todo el sistema o donde??
El ASCII extendido sí soporta tildes.
|
|
|
En línea
|
|
|
|
Castiblanco
|
Si te fijas cuando pones caracteres especiales en el compilador sale una cosa y en la consola sale otra, pero esa otra no siempre es la misma, varia dependiendo el carácter que pusiste... creo que era algo como que en un lado se maneja ASCII y en el otro ANSI, entonces el carácter 100 en ASCII no es el mismo que el 100 en ASCII y así... pero no estoy nada seguro. Igual mira en la practica es así ^^, si quieres que salgan tildes: #include <iostream> using namespace std; int main() { printf("\240"); //a printf("\202"); //e printf("\241"); //i printf("\242"); //o printf("\243"); //u system("pause"); }
PD: Yo uso Windows, pero creo (eso si estoy casi seguro), que en Linux si funciona normal esto de las tildes. Saludos...
|
|
« Última modificación: 18 Abril 2011, 04:13 am por Castiblanco »
|
En línea
|
|
|
|
Aikanáro Anário
|
El compilador ha tirado como 3 errores cuando pegue tu código. Además estoy empezando a programar en C, no en C++, creo que el código que has puesto es para C++.
|
|
|
En línea
|
|
|
|
Castiblanco
|
Qué compilador usas? y qué errores da?
Yo uso Dev-C++
Saludos...
|
|
|
En línea
|
|
|
|
Aikanáro Anário
|
Uso code::blocks Los errores son: error: iostream: No such file or directory error: expected '=', ',', ';', 'asm' or '__attribute__' before 'namespace' In function 'main': warning: incompatible implicit declaration of built-in function 'printf' ||=== Build finished: 2 errors, 1 warnings ===|
|
|
|
En línea
|
|
|
|
Nakp
casi es
Ex-Staff
Desconectado
Mensajes: 6.336
he vuelto :)
|
ninguno de esos es compilador, son IDEs, el compilador que usan ambos por defecto es gcc sobre mingw
deben usar \000 y reemplazar los 0's por el equivalente octal del caracter ascii
|
|
|
En línea
|
Ojo por ojo, y el mundo acabará ciego.
|
|
|
Aikanáro Anário
|
deben usar \000 y reemplazar los 0's por el equivalente octal del caracter ascii
¿Explicas?
|
|
|
En línea
|
|
|
|
Castiblanco
|
Ahh ahora todo más claro Ya, miras el carácter que quieras poner, luego miras su número decimal y lo pasas a octal y lo pones en vez de las XXX...
Entonces el de la "á" en decimal es 160, lo pasas a octal y da 240 y eso es lo que pones en vez de la XXX... Pasar de decimal a octal :http://calc.50x.eu/ Saludos...
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
BATCH: Eliminar caracteres "raros" de un txt: \ / : * ? " < > \ & % (RESUELTO)
Scripting
|
inakynet
|
5
|
12,266
|
7 Julio 2010, 19:01 pm
por Novlucker
|
|
|
AYUDA: PHP no muestra tildes, "ñ" desde MySQL
PHP
|
NetStorm
|
2
|
5,299
|
23 Febrero 2011, 01:50 am
por Nakp
|
|
|
[Taller] Creando una Shellcode: "Direccion de kernel32 y calls especiales"
Bugs y Exploits
|
lShadowl
|
6
|
7,290
|
2 Marzo 2011, 13:08 pm
por 3mp3z@ndo
|
|
|
[python] ayuda caracteres especiales tildes y ñ python
Scripting
|
asdexiva
|
5
|
10,111
|
10 Agosto 2014, 01:49 am
por asdexiva
|
|
|
[BATCH] Leer con FOR "caracteres especiales" de un archivo.
Scripting
|
Segadorfelix
|
2
|
2,888
|
20 Abril 2019, 22:42 pm
por Segadorfelix
|
|