Bueno creo que ya te entiendo (que ya era hora, eh) y mas o menos lo que tu quieres es algo como esto
Por cierto, si lo que estas haciendo es un keylogger igual deberias de pensar en otra cosa y no en un while ejecutandose hasta el fin de los tiempos ya que te cargara mogollon la cpu. Busca algo de informacion sobre "semaforos en c", yo que en linux es posible pero en windows no lo se. Con esto el programa se mantendra a la espera y no cargaras tanto la cpu.
Código (c) [Seleccionar]
#include <stdio.h>
#include <windows.h>
int main()
{
int lain,i=0;
do
{
while(GetAsyncKeyState(VK_SHIFT))
{
lain=GetAsyncKeyState(65);
if(lain!=0)
printf("Estas pulsando Shift-a\n");
}
}while(1);
return 0;
}
Por cierto, si lo que estas haciendo es un keylogger igual deberias de pensar en otra cosa y no en un while ejecutandose hasta el fin de los tiempos ya que te cargara mogollon la cpu. Busca algo de informacion sobre "semaforos en c", yo que en linux es posible pero en windows no lo se. Con esto el programa se mantendra a la espera y no cargaras tanto la cpu.