> さすが 浜田OM 私の書いた説明を的確に理解されて プログラムの
恐縮です。hi
> 以下 プログラムのコードを送ります。
私のプログラミング流儀、アマチュアなので、あくまでも我流ですが・・・
unsigned int c = 0
ですが、ループの中で必ず変数 c には代入されますので、宣言時にも
代入する必要は無いと思います。生成されるコードの効率化のため。
unsigned short mask = 0x8001;
一度しか代入しない変数は、定数にすべきと考えております。
#define MASK 0x8001;
その方が効率の良いコードが生成されるはずです。
吐き出されたアセンブリコードを見ても、変数の内容をいったんレジスタに
コピーしてからアンドをとってますので、定数にすれば直接いけるのではないでしょうか?
それから、GetAsyncKeyState() の引数は符号付き整数ですので、変数
c は int型で宣言しないとコンパイル時に警告が出るのではないでしょうか?
最近、あまりC言語やらないので、ちょっと自身がないところもありますけど。
では、がんばってください。