Converter um inteiro para seus equivalentes ASCII é uma prática comum na programação. Para muitas funções, é necessário manipular os formatos de dados para fazê-los funcionar. Infelizmente, C / C ++ não oferece um método toString conveniente (), ao contrário de Java, de modo que a conversão deve ser feito à mão.
Adicionar o inteiro desejada para o caractere `0`. Note que isto só irá funcionar para um dígito 0-9, e funciona porque os personagens acontecer de estar em ordem.
int i = 3;
c de char = `0` + i;
Agora c é o personagem `3`.
Use itoa (), abreviação de Integer para ASCII. Esta função irá trabalhar para todas as plataformas Windows, mas não é padrão e não vai funcionar para Mac ou Linux.
incluir{
int i = 27;
char * str = new char [33];
itoa (i, str, 10);
// A base de 10 a 10 indica
}
Agora str é "27".
Use fluxos de C ++. Este é o método mais padrão de conversão.
incluir{
int i = 5;
std :: string s;
std :: stringstream out;
Fora lt; lt; Eu;
s = out.str ();
}
Agora s está "5".
dicas & avisos
- Qualquer inteiro para além dos números inteiros 0-9 tiver mais de um dígito, e, portanto, deve ser convertida para uma string (um array de caracteres).
- A função itoa () também pode ser utilizado para bases não-decimais (por exemplo, alterar o último parâmetro de 2, 6, etc., para binário e hexadecimal).
- O comprimento de itoa () `s matriz deve ser calculada pela mão. Lembre-se que as cordas são null-encerrado.