Convertendo inteiros para ascii e ascii para inteiros em C

Publicado por albert guedes em 17/03/2007

[ Hits: 47.582 ]

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

Transparências em menus e bordas de janelas no Gnome

Função em PHP que mostra o número da semana no ano

Mudando a fonte padrão dos seus documentos em LaTeX

Descubra o ip de links de uma página sem esforço

Como gravar partes de um vídeo com o mencoder

Leitura recomendada

Compilando no Debian Wheezy 7.5

Limpando a tela sem NCURSES ou clrsrc() - DOS

system("pause") para Linux

Gnuconio, a conio para Windows e GNU/Linux (v0.1)

FL-Av - Interface gráfica para ClamAV

  

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