Programação Windows - Referencias
Documentação de Windows
Dicas de programação
Essas dicas são de uso do MinGW (porte do gcc para Windows).
Utilização de inteiros de 64 bits
O Mingw possui, nativo, inteiros de 64 bits. Para declará-los, basta usar __int64.
O printf requer um novo descritor de tipo para as variáveis do tipo __int64. Deve-se usar o descritor "%I64d" no string de formatação dessas variáveis.
Exemplo:
__int64 var64;
printf ("Variavel de 64 bits = %I64d\n", var64);
Leitura dos contadores de desempenho dos processadores da Intel
Para isso pode-se usar a função QueryPerformanceCounter. Não esquecer de incluir o windows.h no programa.
Deve-se tomar cuidado com o tipo de parâmetro a ser passado
para a função. Ele deve ser do tipo PLARGE_INTEGER.
Para resolver essa diferença de tipo basta fazer um type-casting sobre um inteiro de 64 bits.
Exemplo:
#include <windows.h>
__int64 Counter;
QueryPerformanceCounter((PLARGE_INTEGER)&Counter);
Incluindo instruções do processador no código C
É possível incluir
instruções de máquina no meio do
código C. Para isso deve usar a diretiva asm.
O detalhamento do formato a ser usado com essa diretiva pode ser encontrado em GCC-Inline-Assembly-HOWTO.
Um exemplo dessa diretiva é a leitura do registrados ESP para uma variável C, que pode ser visto a seguir:
DWORD var32;
asm ("movl %%esp,%0" :"=r"(var32) );