Hola!
Supongo que estás usando SDL. Si es así puedes utilizar la biblioteca
SDL_gfx, que entre otras cosas trae funciones para rotar superficies. 
Específicamente deberías usar la función:
- Código: Seleccionar todo
- SDL_Surface * rotozoomSurfaceXY (SDL_Surface *src, double angle, double zoomx, double zoomy, int smooth);
 
Por ejemplo si la imagen es un personaje caminando hacia la derecha (por defecto), y si queremos mostrarlo caminando a la izquierda, haríamos lo siguiente:
- Código: Seleccionar todo
- SDL_Surface *sprite; // Imagen del personaje
 SDL_Surface *tmp;    // Surface temporal donde quedara rotada la imagen
 SDL_Rect pos;        // Posición del sprite
 
 // Supuesta posicion del sprite
 pos.x=100;
 pos.y=200;
 
 // Efecto espejo en el eje x del sprite
 tmp=rotozoomSurfaceXY(sprite, 0, -1, 1, 0);
 
 // Copia la superficie rotada a la pantalla
 SDL_BlitSurface(tmp, 0, screen, &pos);
 
 // Eliminamos la superficie temporal
 SDL_FreeSurface(tmp);
 
Página oficial de SDL_gfx
http://www.ferzkopp.net/joomla/content/view/19/14/Tengo una versión ya compilada y lista para usar de SDL_gfx en Windows (para el compilador MinGW). 
Puedes bajarla desde aquí:
SDL_gfx 2.0.16
http://www2.netexplora.com/rcaf/utilida ... 2.0.16.zip
Saludos!