dados Linguagens de programação de loja usando uma variedade de diferentes tipos de dados. Um tipo de dados utilizado para armazenar números é o int , que normalmente usa uma de 4 bytes ou segmento de memória de 8 bytes . Um char é outro tipo de dados amplamente utilizado que armazena valores em um segmento de memória de 1 byte . Convertendo um int para um char pode ser um problema porque não há espaço suficiente para armazenar todos os bytes de um int em um char . No entanto, você pode usar vários caracteres para armazenar um único int . Coisas que você precisa
C Compiler , como GCC
C Ambiente de Desenvolvimento Integrado (IDE) , como o Eclipse CDT
Show Mais instruções
1
Comece -se o IDE e criar um novo projeto. Um arquivo de código fonte em branco será aberta na área de trabalho principal.
2
Definir um tipo int que você vai converter mais de um char, e atribuir-lhe um valor. Por exemplo, escrever algo como isto :
unsigned int numberToConvert = 456734645 ;
3
Imprima o valor deste número em hexadecimal. Você vai usar isso para verificar a sua conversão mais tarde. Você pode imprimir este por escrever esta linha logo abaixo da linha anterior :
printf ("% x \\ n", numberToConvert );
4
Descubra quantos caracteres pode caber dentro de um tipo int em seu computador. Faça isso digitando o seguinte :
numberOfChars unsigned int = sizeof ( int) /sizeof (char );
5
Definir os caracteres que irá realizar o seu int . Uma vez que um int é muito maior do que um char, você precisará definir uma matriz de char assim:
destino unsigned char [ numberOfChars ];
6
Criar uma estrutura de loop para esse ciclo vontade através da int e adicionar valores para o caractere a cada passagem . O esqueleto do loop deve ficar assim :
for (int i = 0; i < numberOfChars ; i + +) {
}
< br > 7
Atribuir os primeiros oito bits do número inteiro para o primeiro caractere da matriz . Isso só vai funcionar se bytes são de 8 bits em seu sistema , que eles normalmente são . Esta atribuição pode ser escrito dentro das chaves do loop for assim:
destino [i] = numberToConvert >> ( 8 * i);
8
Imprima os valores de cada caractere em hexadecimal e verifique se ele corresponde ao valor do seu inteiro. Escreva o seguinte abaixo da linha de código anterior :
printf ("% x \\ n", destino [i] );
9
Compilar e executar o programa ( algumas IDEs fazer isso quando você apertar a tecla "F5" ) . Você vai ver que você converteu com êxito o int em caracteres .