De esa forma es muy lento (pixel por pixel). Lo mejor es enviar toda la imagen lista a la memoria de video que refresca la pantalla o por lo menos una buena parte de la imagen.Lo siguiente es una vista a "vuelo de pájaro" de como hacerlo con el GDI pero ahí va:Para realizar esto de forma rápida puedes valerte del DirectX (con el lock/unlock) o del GDI de windows mediante el BitBlt. (Es decir que lo no haces "personalmente", sino mediante una biblioteca de funciones que al final usará los drivers del fabricante de la tarjeta de video para asegurarte velocidad en la transferencia de memoria.)El BitBlt permite copiar la imagen de un "HDC" a otro realizando conversión de profundidad de color, poniendo tu superficie de 15 bits en memoria a otra de 8,15,16,24 o 32 bits. HDC : handle of device context, un puntero a una estructura que define un conjunto de objetos gráficos del GDI.Código: Text BOOL BitBlt( HDC hdcDest, // handle of destination device context int nXDest, // x-coordinate of destination rectangle's upper-left corner int nYDest, // x-coordinate of destination rectangle's upper-left corner int nWidth, // width of destination rectangle int nHeight, // height of destination rectangle HDC hdcSrc, // handle of source device context int nXSrc, // x-coordinate of source rectangle's upper-left corner int nYSrc, // y-coordinate of source rectangle's upper-left corner DWORD dwRop // raster operation code ); En Delphi existe un objeto llamado TBitmap que encapsula el GDI de windows, haciendo las cosas más fáciles (recuperar, escribir archivos .BMP, acceso a la misma imagen para edición, etc). Así que en la versión de compilador C++ que estas usando existirá algún objeto que encapsule el GDI.Utilizando los objetos que encapsulan el GDI podrás obtener el HDC del bitmap que quieres poner en pantalla utilizando el bitblt o también acceder al área de memoria de la imagen que es mucho mejor que sea un DIB "Device Independet Bitmap" para como su nombre dice evitar que el bitmap sea dependiente de la profundidad de color de la resolución actual de la pantalla.
Para poner un pixel en turboC , se usa la funcion putpixel.Sino, entonces tienes varias opciones:1 - usar la api de windows2 - usar un libreria, como por ejemplo directX, allegro, SDL etc3 - Usar directamente las funcionalidades del driver de la tarjeta4 - Hacer un driver