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
Ajude o Pidgin a ser o melhor messenger do mundo
Comando "locate" sumido no SuSE Linux
Imprima textos inteiros com o comando "echo"
Pegar o id de um elemento com javascript
[RESOLVIDO] Magento: Não consigo fazer login de administrador após instalação
Leitura recomendada
STDPRN para GCC
Gnuconio, a conio para Windows e GNU/Linux (v0.1)
Autoestudo e certificação C/C++
Baixe de graça alguns livros do O'Reilly
gcc: fatal error: cannot execute 'cc1plus': execvp: [...] - Como resolver no Linux Mint 20
Comentários
pior q da vontade de socar esses professores mesmo!!! A minha professora que tive de programação era mt horrivel!! desse tipo mesmo hehehe
E só complementando sua dica, também podemos retornar o equivalente em hexa, no lugar de "%d" ou "%c" use "%x".
Valeuuuu...
Mensagem
E só complementando sua dica, também podemos retornar o equivalente em hexa, no lugar de "%d" ou "%c" use "%x".
Valeuuuu...
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)
Mensagem
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
Enviar