下载地址 void CMFCApplication2Dlg::OnBnClickedButtonDtohex() { UpdateData(TRUE); int num = atoi(m_sInput); m_sInput.Format("0x%x",num); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonHextod() { UpdateData(TRUE); m_sInput.MakeLower(); char sz[50]={0}; strcpy(sz,(LPCSTR)m_sInput); char* p = sz; int nlen = strlen(p); WORD dw = * (WORD*)p; char* p1="0x"; WORD dw1 = *(WORD*)p1; if (dw==dw1) { p+=2; nlen-=2; } int data=0; int base=1; char *pend = p+nlen-1; while (pend>=p) { if (*pend>=""a"") { data+= ( (*pend-""a""+10) *base); } else { data+= ( (*pend-""0"") *base); } base*=16; pend--; } m_sInput.Format("%d",data); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonDtob() { UpdateData(TRUE); int num = atoi(m_sInput); char sz[100]={0}; char sz2[100]={0}; int i=0; while (num>0) { int n = num%2; //TRACE("%d",n); if (n==1) { sz[i]=""1""; } else { sz[i]=""0""; } i++; num/=2; } i--; for (int j=0;j<=i;j++) { sz2[j]=sz[i-j]; } m_sInput = sz2; UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonBtod() { UpdateData(TRUE); m_sInput.MakeLower(); char sz[100]={0}; strcpy(sz,(LPCSTR)m_sInput); char* p = sz; int nlen = strlen(p); WORD dw = * (WORD*)p; int data=0; int base=1; char *pend = p+nlen-1; while (pend>=p) { data+= ( (*pend-""0"") *base); base*=2; pend--; } m_sInput.Format("%d",data); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonRgbtoh() { UpdateData(TRUE); m_sInput.MakeLower(); char rgb[3]={0}; char sz[50]={0}; strcpy(sz,(LPCSTR)m_sInput); char* p = sz; int nlen = strlen(p); int i = 0; char *tokenPtr=strtok(sz,","); while(tokenPtr!=NULL) { //cout<<tokenPtr<<""\n""; rgb[i] = atoi(tokenPtr); i++; tokenPtr=strtok(NULL,","); } if (i!=3) { AfxMessageBox("请输入如:12,255,241"); return; } //int aa = RGB(1,2,3); m_sInput.Format("0x%06x",RGB(rgb[0],rgb[1],rgb[2])); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonHtorgb() { // TODO: 在此添加控件通知处理程序代码 UpdateData(TRUE); m_sInput.MakeLower(); char sz[50]={0}; strcpy(sz,(LPCSTR)m_sInput); char* p = sz; int nlen = strlen(p); WORD dw = * (WORD*)p; char* p1="0x"; WORD dw1 = *(WORD*)p1; if (dw==dw1) { p+=2; nlen-=2; } int data=0; int base=1; char *pend = p+nlen-1; while (pend>=p) { if (*pend>=""a"") { data+= ( (*pend-""a""+10) *base); } else { data+= ( (*pend-""0"") *base); } base*=16; pend--; } //m_sInput.Format("%d",data); byte*pRgb =(byte*)&data; m_sInput.Format("%d,%d,%d",pRgb[0],pRgb[1],pRgb[2]); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonAsciitod() { UpdateData(TRUE); LPCSTR p=(LPCSTR)m_sInput; m_sInput.Format("%d",*p); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonDtoasciit() { UpdateData(TRUE); int num = atoi(m_sInput); m_sInput.Format("%c",num); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonDwtoip() { UpdateData(TRUE); DWORD dw = atol(m_sInput); byte ary_by[4]={0}; memcpy(ary_by,&dw,sizeof(byte)*4); m_sInput.Format("%d.%d.%d.%d",ary_by[0],ary_by[1],ary_by[2],ary_by[3]); UpdateData(FALSE); } void CMFCApplication2Dlg::OnBnClickedButtonIptodw() { UpdateData(TRUE); char sz[50]={0}; strcpy(sz,(LPCSTR)m_sInput); char* p = sz; int i = 0; char *tokenPtr=strtok(p,"."); byte ary_by[4]={0}; while(tokenPtr!=NULL) { ary_by[i] = atoi(tokenPtr); i++; tokenPtr=strtok(NULL,"."); } if (i!=4) { AfxMessageBox("请输入如:192.168.0.68"); return; } DWORD dw; memcpy(&dw,ary_by,sizeof(ary_by)*4); m_sInput.Format("%d",dw); UpdateData(FALSE); } |
|
1分 |
不错,还是蛮好的~
|
1分 |
神奇的组合
|
1分 |
不错。。。支持一下
|
1分 |
推荐一个吧,看有没有可以优化的地方,或者潜在的bug!
|
1分 |
的确 |
1分 |
好牛逼的样子
|
谢谢大家的支持,希望对大家有用处,花了一个早上写的,早就想写这个东东了,呵呵
|
|
1分 |
挺有用的挺有用的
|
1分 |
不错的工具。
|
1分 |
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <locale.h> int main() { int i,v; char bs[33]; char b[33]; char hs[9]; char h[9]; char s[4]; char *e; // 十进制整数转二进制串; i=1024; ltoa(i,b,2); sprintf(bs,"%032s",b); printf("i=%d,bs=%s\n",i,bs); // 十进制整数转十六进制串; i=1024; ltoa(i,h,16); sprintf(hs,"%08s",h); printf("i=%d,hs=%s\n",i,hs); // 十六进制字符串转成十进制数 strcpy(hs,"00000400"); sscanf(hs,"%x",&i); printf("hs=%s,i=%d\n",hs,i); // 二进制字符串转化为十六进制字符串; strcpy(bs,"00000000000000000000010000000000"); i=strtol(bs,&e,2); ltoa(i,h,16); sprintf(hs,"%08s",h); printf("bs=%s,hs=%s\n",bs,hs); // 二进制字符串转化为十进制数; strcpy(bs,"00000000000000000000010000000000"); i=strtol(bs,&e,2); printf("bs=%s,i=%d\n",bs,i); // 十六进制字符串转成二进制串 strcpy(hs,"00000400"); sscanf(hs,"%x",&i); ltoa(i,b,2); sprintf(bs,"%032s",b); printf("hs=%s,bs=%s\n",hs,bs); // ASC\GBK字符串转十六进制串 strcpy(s,"a汉"); i=0; while (1) { if (0==s[i]) break; sprintf(hs+i*2,"%02X",(unsigned char)s[i]); i++; } setlocale(LC_ALL,"chs"); printf("s=%s,hs=%s\n",s,hs); // 十六进制字符串转成汉字(GBK)及字符(ASC) strcpy(hs,"61BABA"); i=0; while (1) { if (1!=sscanf(hs+i*2,"%2x",&v)) break; s[i]=(char)v; i++; } s[i]=0; printf("hs=%s,s=%s\n",hs,s); return 0; } //i=1024,bs=00000000000000000000010000000000 //i=1024,hs=00000400 //hs=00000400,i=1024 //bs=00000000000000000000010000000000,hs=00000400 //bs=00000000000000000000010000000000,i=1024 //hs=00000400,bs=00000000000000000000010000000000 //s=a汉,hs=61BABA //hs=61BABA,s=a汉 |
1分 |
实用,赞一个
|
1分 |
C++版块是没有什么可以推荐了么?
|
1分 |
实在没亮点~
|
1分 |
挺好,不错,赞一个。
|
1分 |
楼主强!赵老师强!
|
1分 |
赵老师
|
1分 |
来试一下~~
|
1分 |
分享总是值得赞扬的。。。虽然没去看。。嘎嘎
|
1分 |
还没学C语言,看不懂
|
1分 |
– – .
|
1分 |
bucuo ////////
|
1分 |
都是高手a!
|
1分 |
不错,界面有点丑
|
1分 |
支持 支持 支持
|
1分 |
分享总是值得鼓励的。
楼主是应该是个新人, 支持ing。 |
1分 |
www.qg10086.net
|
1分 |
赞一个
|
1分 |
实用,赞一个
|
1分 |
亲亲,支持下~~~~~~~~~~~~~~~~
|
1分 |
挺好,不错,赞一个!
|
1分 |
不错哦哦o 哦
|
1分 |
支持分享好软件。
|
1分 |
很不错的样子
|
1分 |
界面不错,似乎标题可以改个程序名。
|
1分 |
应该不是新人了;支持; |
1分 |
支持,学习了!
|
1分 |
支持支持。。。。。。。。。。。。。。。
|
1分 |
上首页了。。。
|
1分 |
支持,学习了!
|
1分 |
赵老师太强大了。。。
学习了。。! |
1分 |
学习了
|
1分 |
进制转换啊。可以。
|
1分 |
很是需要呢,很是需要呢
|
1分 |
没早看见啊,以前用到
|
1分 |
比较实用,收藏先。
|
1分 |
支持!应该有用。
|
1分 |
很强大,学习了
|
1分 |
收藏!
|
很强大,学习了
|
|
呵呵。
|
|
高级计算器。。。。。
|
|
厉害啊啊啊啊啊啊啊
|
|
支持原创,感谢了!
|
|
明显建议在stdafx.h中加:
#if defined _M_IX86 #pragma comment(linker,"/manifestdependency:"type=""win32"" name=""Microsoft.Windows.Common-Controls"" version=""6.0.0.0"" processorArchitecture=""x86"" publicKeyToken=""6595b64144ccf1df"" language=""*"""") #elif defined _M_X64 #pragma comment(linker,"/manifestdependency:"type=""win32"" name=""Microsoft.Windows.Common-Controls"" version=""6.0.0.0"" processorArchitecture=""amd64"" publicKeyToken=""6595b64144ccf1df"" language=""*"""") #else #pragma comment(linker,"/manifestdependency:"type=""win32"" name=""Microsoft.Windows.Common-Controls"" version=""6.0.0.0"" processorArchitecture=""*"" publicKeyToken=""6595b64144ccf1df"" language=""*"""") #endif |
|
感谢分享
|
|
不错。。。支持一下
|
|
这个早就有,只不过没你这个功能全,是给做web前端和做xss的人用的,这是我写的
|
|
哇。。。。支持一个
|
|
虽然看不懂但还是要赞一下
|
|
不错,真的好
|
|
不明觉厉
|
|
谢谢谢谢谢谢谢谢
|
|
好
|
|
目测是c
|
|
外观好看点就更好了
|
|
怎么感觉好多评论都是小号啊 你看那昵称 难道CSDN也有人来刷分??
|
|
支持楼主的作品!
|
|
小工具挺实用的 自己做过,类似老赵的写法。
若果在加上unicode 的就更好 |
|
其实就是倒分党 |
|
看你写得如此麻烦
16进制字符串转数值只要调用 unsigned long value = strtol(szstr, 0, 16); 10进制字符串转数值同样函数 unsigned long value strtol(szstr, 0, 10); 至于ip什么的转换字节塞入ws2_32里面的函数即可,另外的RGB宏什么的,这代码量也就白来行 |
|
看着这么多代码,有种回到大学的感觉
|
|
不错,值得学习。
|
|
非常感谢,这样做对数据类型有个比较清晰的认识。如果能有注释就更好了。。
|
|
|
|
非常强大哦,不错
|
|
我只想说一句话,程序员的最终目标是学好编程,造福人类,结贴,散分
|
|
下载下来看看。
|
|
学习一下…..
|
|
赵老师赞一个~
|
|
下来玩玩儿sswc
|
|
没有积分啊df
|
|
好牛的样子 不过dword是啥?
|
|
C++么?
|
|
谢谢楼主分享
|
|
支持原创,感谢了!
|
|
很实用啊。。。。。。。。。
|
|
虽然没亮点,但分享就是一种勇气
|
|
不错 试试
|
|
顶起!!分享
|
|
好东西,下载来看看
|
|
谢谢楼主啦~~~拿走研究了~~~
|
|
学教您如何更快获得可用分 你还可以输入9999个字符 (Ctrl+Enter)
|
|
支持
|
|
好厉害!mark
|
|
赞 正需要 自己又懒得写
|
|
不错,谢谢分享
|
|
细心的人,成长真快啊
|
|
进制转换,像楼主学习了
|
|
不错,赞一个。
|
|
0.0,没积分,下载不了
|
|
有用啊 非常好
|
|
lz 刚入门c++ 一般用vc6.0编程 你这个工具是用什么编译器做的? 另外头文件是神马 现在完全是小白 望指教
|
|
这个东西还是挺有用的,碰上问题了是真心烦
|
|
灰常给力,好强大
|
|
+1 |
|
不错哟,学习之
|