Las variables tipo
char en C/C++ no son almacenados como símbolo, sino como un número entero, de acuerdo a la tabla de caracteres ASCII
http://es.wikipedia.org/wiki/ASCII
Es decir:
Código C++:
Ver originalchar c='a';// lo que se guarda es 97
int x = c;//x tiene almacenado 97
x+=3;
c=x;// c ahora almacena 100 o lo que equivale a d
Con esto ya debes de poder solucionar tu problema. Si tienes dudas coloca tu implementación para resolverlas.