WinMain関数が・・・
Posted: 2007年6月12日(火) 02:00
みなさんお久しぶりです。
最近「book off」でプログラムはなぜ動くのかという本を買いました。
まぁそんなことはどうでもいいのですが・・
その本に載っているプログラムでコンパイルできないものがあります。
コンパイルしようとすると
エラー E2040 window.c 10: 宣言が正しく終了していない(関数 WinMain )
エラー E2027 window.c 16: メモリ上に配置されなければならない(関数 WinMain )
警告 W8008 window.c 26: 条件が常に真(関数 WinMain )
警告 W8066 window.c 32: 実行されないコード(関数 WinMain )
エラー E2277 window.c 34: 左辺値が必要(関数 WinMain )
警告 W8057 window.c 42: パラメータ 'hInstance' は一度も使用されない(関数
WinMain )
警告 W8057 window.c 42: パラメータ 'hPrevInstance' は一度も使用されない(関数
WinMain )
警告 W8057 window.c 42: パラメータ 'lpCmdLine' は一度も使用されない(関数
WinMAin)
警告 W8057 window.c 42: パラメータ 'nCmdShow' は一度も使用されない(関数
WinMain)
とでます。
本とよく見比べたのですがたぶん相違はないと思います。
どこが悪いのかご指導よろしくお願いしますm(_ _)m
↓↓ ソース ↓↓
<window.c>
#include "windows.h"
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow )
{
float f;
unsigned long 1;
int i;
char s[80];
f = (float)0.75;
memcpy(&1, &f, 4);
for (i = 33; i >= 0; i--)
{
if ((i == 1) || (i == 10))
{
s = '-';
}
else
{
if (1 % 2 == 1)
{
s = '1';
}
else
{
s = '0';
}
1 /= 2;
}
}
s[34] = '\0';
MessageBox(NULL, s, "単精度浮動小数点数の表し方", MB_OK);
return 0;
}
長くなってスミマセンm(_ _)m
P.S
管理人さん、かなり遅れてですが「50万」突破おめでとうございます。(^\^)
最近「book off」でプログラムはなぜ動くのかという本を買いました。
まぁそんなことはどうでもいいのですが・・
その本に載っているプログラムでコンパイルできないものがあります。
コンパイルしようとすると
エラー E2040 window.c 10: 宣言が正しく終了していない(関数 WinMain )
エラー E2027 window.c 16: メモリ上に配置されなければならない(関数 WinMain )
警告 W8008 window.c 26: 条件が常に真(関数 WinMain )
警告 W8066 window.c 32: 実行されないコード(関数 WinMain )
エラー E2277 window.c 34: 左辺値が必要(関数 WinMain )
警告 W8057 window.c 42: パラメータ 'hInstance' は一度も使用されない(関数
WinMain )
警告 W8057 window.c 42: パラメータ 'hPrevInstance' は一度も使用されない(関数
WinMain )
警告 W8057 window.c 42: パラメータ 'lpCmdLine' は一度も使用されない(関数
WinMAin)
警告 W8057 window.c 42: パラメータ 'nCmdShow' は一度も使用されない(関数
WinMain)
とでます。
本とよく見比べたのですがたぶん相違はないと思います。
どこが悪いのかご指導よろしくお願いしますm(_ _)m
↓↓ ソース ↓↓
<window.c>
#include "windows.h"
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow )
{
float f;
unsigned long 1;
int i;
char s[80];
f = (float)0.75;
memcpy(&1, &f, 4);
for (i = 33; i >= 0; i--)
{
if ((i == 1) || (i == 10))
{
s = '-';
}
else
{
if (1 % 2 == 1)
{
s = '1';
}
else
{
s = '0';
}
1 /= 2;
}
}
s[34] = '\0';
MessageBox(NULL, s, "単精度浮動小数点数の表し方", MB_OK);
return 0;
}
長くなってスミマセンm(_ _)m
P.S
管理人さん、かなり遅れてですが「50万」突破おめでとうございます。(^\^)