如何将char[]转换为unsigned short,例如,我在Edit中写了一个10进制的数,通过转换为16进制的,然后附给一个unsigned short变量。如何做?
char buffer[80];
uint Temp;
sprintf(buffer, "%x", M_Edit1);
Temp = buffer;?????// 这里该如何将得到的16进制数给Temp呢?如0x10(16进制)
你用的是MFC?怎么不直接将edit内的值设为UINT啊,ctr+w进入MFC ClassWizard,点击Member Variables属性页
,选中IDC_EDIT,点击Add variable,在Variable type里直接选择UINT,如果要把它表示成0x00类型的话,
用TCHAR存储算了,如
TCHAR buf[16] = L"\0";
swprintf(buf,L"0x%x",m_uIntEdit);//假设Edit关联的变量叫m_uIntEdit
unsigned short是一个无符号的数字啊!才16位
在eVC下只有关联到short ,你可以先关联到UINT,然后在做判断例如大于65535怎么办
对于16进制或者10进制,对程序员而言都一样的啊,这跟进制有什么关系呢? 只是在显示的时候处理处理就OK了
int
uint
long
等数值保存的都是10进制的
其他进制的只是在转换为字符串时使用
Edit中写了一个10进制的数直接取到string中,转换成int/uint, 都是10进制的。
然后你又要显示的话,再转换成需要的进制