Ответ я нашел.
Это вот так что-ли: static_cast<char>(int+48)??
во-первых статик_каст, это не преобразование типов, а приведение. Т.е. принудительное засовывание одного типа в объем памяти другого. Всему, что не поместилось, обрубаем ноги. Возможно, я не прав, но если int a = 42 с его помощью можно превратить в char *c = "42", то я обещаю пойти и почитать стандарт
Во-вторых, что будет, если число отрицательное?