Convertendo inteiros para ascii e ascii para inteiros em C

Publicado por albert guedes em 17/03/2007

[ Hits: 49.256 ]

Blog: https://teko.net.br

 


Convertendo inteiros para ascii e ascii para inteiros em C



De um modo simples, com nosso bom e velho compilador gcc, podemos ter o valor inteiro de um caractere ascii da seguinte forma:

main(){

   int i;
   char c;

   c='x';
   i=c;

   printf("%d",i);

}

Nada mais banal, não é? Você apenas iguala a variável de inteiro com a variável de caractere e ela já dá o seu valor ascii.

Agora, dado um inteiro, se você quiser saber qual é seu caractere ascii correspondente é só fazer:

main(){

   int i;
   char c;

   i='109';
   c=i;

   printf("%c",c);

}

Tão simples que dá vontade de bater no professor de programação que disse que era para usar "struct{char *c} = sprintf(%#$#!$#$)" e coisas assim.

Boa "programação" para todos.

Outras dicas deste autor

Comando "locate" sumido no SuSE Linux

Como montar partições freebsd no linux

Resolvendo problema de conexão do Skype Beta no Debian

Torrent com Magnet Links - Baixando arquivos via Terminal

Mantenha o "ls" sempre colorido

Leitura recomendada

Lançado o FltkEmu

Verificar conversão de tipo em C/C++

Compilando no Debian Wheezy 7.5

Programando em C/C++ no Eclipse

Como escrever código portável

  

Comentários
[1] Comentário enviado por ftonello em 18/03/2007 - 23:25h

pior q da vontade de socar esses professores mesmo!!! A minha professora que tive de programação era mt horrivel!! desse tipo mesmo hehehe

[2] Comentário enviado por TSM em 30/01/2008 - 15:02h

E só complementando sua dica, também podemos retornar o equivalente em hexa, no lugar de "%d" ou "%c" use "%x".

Valeuuuu...


[3] Comentário enviado por JoseRenan em 10/07/2011 - 22:00h

Fiz essa prog. em C++:
#include <iostream>
using namespace std;
int main ()
{
int n, opcao;
char m;
cout<<"Digite 1 para converter numero>char e 2 para char>numero: ";
cin>>opcao;
switch (opcao)
{
case 1:
cout<<"Digite um numero: ";
cin>>n;
cout<<n<<"= "<<static_cast<char>(n)<<endl;
break;
case 2:
cout<<"Digite um caracter: ";
cin>>m;
cout<<m<<"= "<<static_cast<int>(m)<<endl;
break;
}
return 0;
}

Em C || C++ poderia ser assim:
n(int)



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts