VC++ 6.0 esta obsoleto y esta lejos de soportar el standard de C++.
La version Express no es una version de prueba, no tiene limitacion temporal.
El tamaño de las variables cambia por ser el Turbo C, incluso mas antiguo y obsoleto, un compilador para MS-DOS, un S.O. de 16 bits. Si queres ver cuantos bytes ocupa una variable usa sizeof pero te adelanto que el VC++ 6.0 usa el tamaño adecuado para x86 de 32 bits.
Claro que si, se llaman hardware keyloggers y no tienen nada de nuevo, los hay para USB tambien, no solo PS/2 como el de la foto. El loggeo de las teclas se hace por hardware, casi imposible de detectar.
E incluso hay unos que venden listos para poner DENTRO del teclado