免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1933 | 回复: 11
打印 上一主题 下一主题

求一种CRC码 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-11-28 10:21 |只看该作者 |倒序浏览
字符串的操作和存储都需要较大的空间,可以考虑用DWORD来存储,写一个函数,将字符串转化成DWORD值:
DWORD crc( char* );
觉得这样的一个函数十分有用,但是小弟较笨,写不出,有高手发个帖子教吗?
支持公益事业!
^_^

论坛徽章:
0
2 [报告]
发表于 2005-11-28 11:57 |只看该作者
没有人感兴趣吗?

论坛徽章:
0
3 [报告]
发表于 2005-11-28 12:13 |只看该作者
double atof(const char *nptr);

atof- converts ASCII to floating point numbers

atoi- converts ASCII to integers

atol- converts ASCII to long integer numbers

论坛徽章:
0
4 [报告]
发表于 2005-11-28 12:39 |只看该作者
原帖由 lrh3025 于 2005-11-28 10:21 发表
字符串的操作和存储都需要较大的空间,可以考虑用DWORD来存储,写一个函数,将字符串转化成DWORD值:
DWORD crc( char* );
觉得这样的一个函数十分有用,但是小弟较笨,写不出,有高手发个帖子教吗?
支持公益 ...

CRC是校验方式,不是转换方法!

论坛徽章:
0
5 [报告]
发表于 2005-11-28 13:30 |只看该作者
原帖由 lrh3025 于 2005-11-28 10:21 发表
字符串的操作和存储都需要较大的空间,可以考虑用DWORD来存储,写一个函数,将字符串转化成DWORD值:
DWORD crc( char* );
觉得这样的一个函数十分有用,但是小弟较笨,写不出,有高手发个帖子教吗?
支持公益 ...


你想问的是压缩算法吧?

论坛徽章:
0
6 [报告]
发表于 2005-11-28 14:22 |只看该作者
yes!
那应该是把字符串压缩成DWORD数值吧

论坛徽章:
0
7 [报告]
发表于 2005-11-28 14:51 |只看该作者
原帖由 lrh3025 于 2005-11-28 14:22 发表
yes!
那应该是把字符串压缩成DWORD数值吧

为什么是压缩成dword?压缩出来的数据都是二进制的,在c语言里都是表示为unsigned char

论坛徽章:
0
8 [报告]
发表于 2005-11-28 15:04 |只看该作者
我想有一个这样功能的函数:
DWORD fun( char* str );
这样,我在程序中如果有这样的字符串:
string str = "abc";
可以
DWORD dw = fun( str.c_str( ) );
可以这样用:
if( dw == fun( str.c_str( ) )
    ;
这里没必要这样用,但在有些地方是很方便的

论坛徽章:
0
9 [报告]
发表于 2005-11-28 16:05 |只看该作者
原帖由 lrh3025 于 2005-11-28 15:04 发表
我想有一个这样功能的函数:
DWORD fun( char* str );
这样,我在程序中如果有这样的字符串:
string str = "abc";
可以
DWORD dw = fun( str.c_str( ) );
可以这样用:
if( dw == fun( str.c_s ...


这不可能做到通用的。因为你的数据一般情况下不可能被压缩到几个字节的!

论坛徽章:
0
10 [报告]
发表于 2005-11-28 16:30 |只看该作者
我们当然不能把一个1M的字符串转换成一个DWORD,但是我们可以把"name"等少于一定字符数的字符串转换出来,可以不大于20,2的32次方可以表示多少个字符的排列组合呢?这个值可以求一下,我数学不好:)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP