需要用字符串存储DWORD值假设1个DWORD值=3435973836,那么就需要10字节的字符串保存吗?
DWORD dwValue;
char szValue[10+1];//能比10短吗?能不能用很短的字符串保存,越短越好
DWORD dwValue;
char szValue[10+1];//能比10短吗?能不能用很短的字符串保存,越短越好
解决方案 »
- vs2010创建的多文档带属性栏的应用,属性栏中的combox不能手动指定选择项的问题
- 高分求助:来者有分,怎么样使CTabCtrl页签随MFC对话框的窗体变化而变化。
- 大家提供些开发vc2010下面控件的资料吧。
- 模式对话框的问题
- warning C4518: 'int ' : storage-class or type specifier(s) unexpected here; ignored
- 如何实现关闭登录框,即关闭整个程序??
- 关于用CListCtrl如何添加单选和复选框列的问题?
- 还是文件操作的问题,在线等待
- 这是什么意思:字符串前面干嘛有个“L”
- 紧急:用VC编的动态链接库如何在IE环境下debug?
- 急!急问个位高手!怎么样把CListCtrl里面的数据导入到excel里面!
- link问题?
???????????,ffff应该是无穷大,大大大大大大大大大着呢呵呵
如用16进制,FFFFFFFF 8个字节就可以了最长了
但是怎么转换呢
考虑到+1的人无非是要加一个\0,
可是,二进制值是不须要\0的,而且也不能有\0的,
因为二进制值中任何一字节都有可能正好等于\0。
这样就使它的长度意外地“变短”了。
楼主要用字符串表示,那倒是要加1的,
究竟是几加1呢?可以选最短的表示方式:
转成16进制看看就行了。
DWORD data = 12345678;
memcpy(buf,&data,4);
...
...
DWORD readData = 0;
memcpy(&readData,buf,4);
TRACE("%d",readData);