亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? convnumsdlg.cpp

?? 這是一個關于進制轉換的VC++小程序,對于很多初學VC的學者有很大的幫助.
?? CPP
字號:
// ConvNumsDlg.cpp : implementation file
//

#include "stdafx.h"
#include "ConvNums.h"
#include "ConvNumsDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CConvNumsDlg dialog

CConvNumsDlg::CConvNumsDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CConvNumsDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CConvNumsDlg)
	m_strDecimal = _T("");
	m_strBinary = _T("");
	m_strHex = _T("");
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CConvNumsDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CConvNumsDlg)
	DDX_Text(pDX, IDC_DECIMAL, m_strDecimal);
	DDX_Text(pDX, IDC_BINARY, m_strBinary);
	DDX_Text(pDX, IDC_HEX, m_strHex);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CConvNumsDlg, CDialog)
	//{{AFX_MSG_MAP(CConvNumsDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_BN_CLICKED(IDC_DECIMAL_CONV, OnDecimalConv)
	ON_BN_CLICKED(IDC_BINARY_CONV, OnBinaryConv)
	ON_BN_CLICKED(IDC_HEX_CONV, OnHexConv)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CConvNumsDlg message handlers

BOOL CConvNumsDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here
	
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CConvNumsDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CConvNumsDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CConvNumsDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

//將16進制的一個字符轉換為十進制的數
unsigned char CConvNumsDlg::BtoH(char ch)
{
	//0-9
	if (ch >= '0' && ch <= '9') 
		return (ch - '0');         

	//9-15
	if (ch >= 'A' && ch <= 'F') 
		return (ch - 'A' + 0xA);   

	//9-15
	if (ch >= 'a' && ch <= 'f')
		return (ch - 'a' + 0xA);  
	return(255); 
}

//轉換十進制數
void CConvNumsDlg::OnDecimalConv() 
{
	UpdateData(TRUE);
	//先轉換為二進制
	m_strBinary = DecimalToBinary(m_strDecimal);

	//再轉換為十六進制
	m_strHex = BinaryToHex(m_strBinary);
	UpdateData(FALSE);
}

//轉換二進制數
void CConvNumsDlg::OnBinaryConv() 
{
	UpdateData(TRUE);
	//轉換為十進制
	m_strDecimal = BinaryToDecimal(m_strBinary);

	//轉換為十六進制
	m_strHex = BinaryToHex(m_strBinary);
	UpdateData(FALSE);
}

//轉換十六進制數
void CConvNumsDlg::OnHexConv() 
{
	UpdateData(TRUE);
	//先轉換為二進制
	m_strBinary = HexToBinary(m_strHex);

	//再轉換為十進制
	m_strDecimal = BinaryToDecimal(m_strBinary);
	UpdateData(FALSE);
}

//轉換十六進制為二進制
CString CConvNumsDlg::HexToBinary(CString strHex)
{
	int nLenth = strHex.GetLength();
	char* Hex = new char[nLenth];
	Hex = strHex.GetBuffer(0);
	CString strBinary = "";
	for(int i=0;i<nLenth;i++)
	{
		//轉換一位十六進制數為十進制
		char h = Hex[nLenth-1-i];
		int j = BtoH(h);
		CString str;
		str.Format("%d",j);

		//轉換十進制為4為二進制
		str = DecimalToBinary(str);
		strBinary += str;
	}
	return strBinary;
}

//轉換二進制為十六進制
CString CConvNumsDlg::BinaryToHex(CString strBinary)
{
	int nLength = strBinary.GetLength();
	CString str = strBinary;
	//位數不是四的倍數時補齊
	switch(nLength%4)
	{
	case 0:
		break;
	case 1:
		strBinary.Format("%d%d%d%s",0,0,0,str);
		break;
	case 2:
		strBinary.Format("%d%d%s",0,0,str);
		break;
	case 3:
		strBinary.Format("%d%s",0,str);
		break;
	default:
		return "";
		break;
	}

	CString strHex,str1;
	str1 = "";
	nLength = strBinary.GetLength();
	for(int i=1;i<=(nLength/4);i++)
	{
		//每四位二進制數轉換為一十六進制數
		str = strBinary.Left(4);
		CString strDecimal = BinaryToDecimal(str);
		int nDecimal = atoi(strDecimal.GetBuffer(0));
		if(nDecimal<10)
			str1.Format("%d",nDecimal);
		else
		{
			char c = 'A' + (nDecimal-10);
			str1.Format("%c",c);
		}
		strHex += str1;
		strBinary = strBinary.Right(strBinary.GetLength()-str.GetLength());
	}
	return strHex;
}

//轉換十進制為二進制
CString CConvNumsDlg::DecimalToBinary(CString strDecimal)
{
	int nDecimal = atoi(strDecimal.GetBuffer(0));

	int nYushu;	//余數
	int nShang;	//商
	CString strBinary = "";
	char buff[2];
	CString str = "";
	BOOL bContinue = TRUE;
	while(bContinue)
	{
		nYushu = nDecimal%2;
		nShang = nDecimal/2;
		sprintf(buff,"%d",nYushu);
		str = strBinary;
		strBinary.Format("%s%s",buff,str);
		nDecimal = nShang;
		if(nShang==0)
			bContinue = FALSE;
	}
	return strBinary;
}

//轉換二進制為十進制
CString CConvNumsDlg::BinaryToDecimal(CString strBinary)
{
	int nLenth = strBinary.GetLength();
	char* Binary = new char[nLenth];
	Binary = strBinary.GetBuffer(0);
	int nDecimal = 0;
	for(int i=0;i<nLenth;i++)
	{
		char h = Binary[nLenth-1-i];
		char str[1];
		str[0] = h;
		int j = atoi(str);
		for(int k=0;k<i;k++)
		{
			j=j*2;
		}
		nDecimal += j;
	}
	CString strDecimal;

	strDecimal.Format("%d",nDecimal);
	return strDecimal;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情一区二区三区| 91精品欧美一区二区三区综合在 | 亚洲人精品午夜| 日韩黄色小视频| 91老司机福利 在线| 日韩精品一区二区在线| 亚洲一二三区视频在线观看| 国产成人高清在线| 日韩欧美中文字幕公布| 亚洲国产一区在线观看| av不卡一区二区三区| 欧美tickling网站挠脚心| 一区二区三区资源| 福利一区在线观看| 欧美成人艳星乳罩| 日韩电影网1区2区| 欧美丝袜自拍制服另类| 中文字幕一区二区三中文字幕| 精彩视频一区二区| 欧美一区二区精品久久911| 亚洲自拍偷拍网站| 色婷婷激情久久| 亚洲欧洲国产日本综合| 国产高清精品网站| 26uuu亚洲婷婷狠狠天堂| 日日噜噜夜夜狠狠视频欧美人| 色婷婷久久99综合精品jk白丝 | 在线视频国产一区| 亚洲欧美怡红院| 成人黄色网址在线观看| 精品国产乱码久久久久久图片| 日韩成人午夜电影| 777精品伊人久久久久大香线蕉| 洋洋成人永久网站入口| 91免费国产在线| 亚洲日韩欧美一区二区在线| 成人av电影在线播放| 国产日韩高清在线| 国产91精品精华液一区二区三区 | 欧美亚洲自拍偷拍| 亚洲国产精品视频| 国产三级一区二区| 国产毛片一区二区| 国产午夜精品福利| 高清不卡在线观看| 国产精品三级视频| 99re成人在线| 伊人夜夜躁av伊人久久| 91豆麻精品91久久久久久| 一区二区三区四区五区视频在线观看| 91蝌蚪porny| 亚洲综合图片区| 欧美日韩在线播放| 免费精品99久久国产综合精品| 欧美一区二区三级| 激情欧美日韩一区二区| 久久久久久久久久看片| 国产**成人网毛片九色| 中文字幕在线一区二区三区| 91麻豆swag| 亚洲bdsm女犯bdsm网站| 日韩一区二区三区在线视频| 久99久精品视频免费观看| 久久影视一区二区| 成人av电影免费在线播放| 亚洲精品乱码久久久久久久久| 欧美在线高清视频| 青青草国产精品97视觉盛宴 | 一本一本久久a久久精品综合麻豆| 亚洲欧美成aⅴ人在线观看| 欧美色综合影院| 青娱乐精品视频| 欧美激情一区二区三区四区 | 久久91精品国产91久久小草| 国产日韩欧美综合在线| 99re成人在线| 日韩黄色在线观看| 国产午夜精品一区二区三区四区| 色综合一个色综合亚洲| 日韩福利电影在线观看| 国产免费观看久久| 欧美性受xxxx黑人xyx性爽| 美女一区二区三区在线观看| 国产日产欧美精品一区二区三区| 色婷婷亚洲精品| 毛片一区二区三区| 综合色天天鬼久久鬼色| 在线电影一区二区三区| 国产成人精品aa毛片| 亚洲国产日韩综合久久精品| 久久影院午夜论| 91福利视频网站| 国产精品一区二区黑丝| 成人av综合在线| 亚洲韩国一区二区三区| 久久免费国产精品| 欧洲国内综合视频| 国产乱码精品一区二区三区av | 日韩免费视频一区二区| av在线不卡电影| 天堂午夜影视日韩欧美一区二区| 国产日韩av一区| 欧美精品欧美精品系列| 懂色av一区二区夜夜嗨| 午夜精品久久久久久久99樱桃| 久久精品视频免费| 欧美精品久久久久久久多人混战| 成人一区二区三区中文字幕| 婷婷激情综合网| 中文字幕中文字幕一区| 精品国产一区二区在线观看| 91麻豆免费看| 国产99久久久国产精品免费看 | 中文字幕va一区二区三区| 777欧美精品| 色婷婷亚洲精品| 丁香婷婷综合色啪| 久久成人免费网| 亚洲一二三专区| 综合久久综合久久| 久久青草欧美一区二区三区| 欧美群妇大交群的观看方式| 97se亚洲国产综合在线| 国产乱人伦偷精品视频免下载| 日本不卡免费在线视频| 尤物视频一区二区| 国产精品电影一区二区三区| 日韩精品在线一区二区| 欧美日韩三级在线| 色偷偷88欧美精品久久久| 国产91丝袜在线18| 国产在线日韩欧美| 免费成人美女在线观看.| 亚洲国产视频一区| 一区二区在线观看不卡| 国产精品国产三级国产普通话蜜臀 | 日本中文在线一区| 亚洲综合免费观看高清完整版在线 | 91女人视频在线观看| 风间由美一区二区三区在线观看| 裸体一区二区三区| 丝袜亚洲精品中文字幕一区| 亚洲综合久久久| 亚洲免费毛片网站| 日韩美女视频19| 中文字幕在线不卡国产视频| 中日韩免费视频中文字幕| 国产亚洲精品资源在线26u| 亚洲精品一区二区三区在线观看| 日韩欧美在线1卡| 91精品国产乱| 欧美一级一级性生活免费录像| 欧美精品在线观看一区二区| 欧美性xxxxx极品少妇| 在线免费观看日本欧美| 日本韩国精品一区二区在线观看| 99r精品视频| 色偷偷成人一区二区三区91| 色综合中文字幕国产 | 日韩av网站免费在线| 日韩制服丝袜av| 日韩—二三区免费观看av| 日本亚洲电影天堂| 美国十次了思思久久精品导航| 麻豆精品新av中文字幕| 狠狠色丁香九九婷婷综合五月| 久久er精品视频| 国产在线播放一区| 成人午夜免费视频| 91免费国产视频网站| 在线观看国产一区二区| 欧美日韩三级一区| 欧美一区二区日韩| 欧美精品一区二区精品网| 久久精品日韩一区二区三区| 欧美高清在线一区| 亚洲欧美一区二区久久| 亚洲国产va精品久久久不卡综合| 婷婷开心激情综合| 精品一区二区国语对白| 国产剧情av麻豆香蕉精品| 成人av在线播放网站| 日本乱码高清不卡字幕| 777久久久精品| 久久久美女毛片| 亚洲视频资源在线| 丝瓜av网站精品一区二区| 久久成人羞羞网站| 成人av在线播放网站| 欧美性猛交xxxx黑人交| 日韩女优电影在线观看| 国产农村妇女毛片精品久久麻豆| 亚洲欧美另类综合偷拍| 婷婷夜色潮精品综合在线| 狠狠色狠狠色综合系列| caoporen国产精品视频| 欧美日韩激情一区二区三区| 欧美成va人片在线观看| 亚洲欧洲日韩综合一区二区| 亚洲超碰精品一区二区|