C/C++. Преобразование типов переменных: int to char or char to int

1. Подключаем библиотеку <stdlib.h>


2. Преобразование численной строки в символьную:

char *itoa( int value,  char *string, int radix ); 
char *ltoa( long value, char *string, int radix); 
char *ultoa( unsigned long value, char*string, int radix );
 
под radix понимают основание преобразуемого числа int value в символьную строку
char *string. 
 
Example:
 
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
        char *str = new char[17];

        int i = 1234567890;

        itoa(i, str, 10);

        cout << str << endl;

        delete szString;

        return 0;
}
 
3. Преобразование символьной строки в числовую:
 
double atof( char *string );
int atoi( char *string ); 
long atol( char *string );
long double _atold( char *string );
 
 
Example:
 
#include <iostream> 
#include <stdlib.h>
using namespace std;
int main()
{
        char * str = "0123456789";

        int i;

        i = atoi(str);

        cout << i << endl:
 
        return 0;
} 

Выше приведенные способы относят к нестандартным расширениям языка С, дело
принципа и специфики поставленной задачи. Поэтому для этих целей можно
воспользоваться стандартными C-шными функциями, например -
 
int sprintf ( char * str, const char * format, ... );
 
Вот пример.
 
/* sprintf example */
#include <stdio.h>

int main ()
{
  char buffer [50];
  int n, a=5, b=3;
  n=sprintf (buffer, "%d plus %d is %d", a, b, a+b);
  printf ("[%s] is a %d char long string\n",buffer,n);
  return 0;
}