马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
[/pre][pre]void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
TCHAR msg[32];
int idata, istate = 1;
switch(id)
{
case IDC_BUTTON1:
{
memset(msg , 0, sizeof(msg));
GetDlgItemText(hwnd, IDC_EDIT1, msg, sizeof(msg));
idata = atoi(msg);
if(0 == JudegNumber(msg, sizeof(msg)))
{
MessageBox(hwnd, TEXT("请输入正确格式!"),
TEXT("Tips"), MB_OK | MB_ICONWARNING);
istate = 0;
}
itoa(idata, msg, 2);
if(1 == istate)
SetDlgItemText(hwnd, IDC_EDIT2, msg);
}
break;
case IDC_BUTTON2:
{
memset(msg , 0, sizeof(msg));
GetDlgItemText(hwnd, IDC_EDIT2, msg, sizeof(msg));
idata = BinStrToDec(msg);
itoa(idata, msg, 10);
SetDlgItemText(hwnd, IDC_EDIT1, msg);
}
break;
default:
break;
}
}
//2进制转换为10进制
int BinStrToDec(TCHAR* str)
{
int n, i, k;
int sum = 0;
n=strlen(str);
for(i = 0; i < n; i ++)
{
k = str[i] -'0';
if(k == 1)
{
sum += (int)pow(2, n-i-1);
}
else if(k == 0)
{
continue;
}
else
{
MessageBox(NULL, TEXT("原数据不是二进制数!"), TEXT("Tips"),
MB_OK | MB_ICONWARNING);
}
}
return sum;
}
int JudegNumber(TCHAR *MSG, int inum)
{
int i;
int flag = 1;
for(i = 0; i < inum; i ++)
{
if(MSG[i] >= '0' && MSG[i] <= '9' || MSG[i] == 0 || MSG[i] == '.')
{
;
}
else
{
flag = 0;
}
}
return flag;
}
|