易截截图软件、单文件、免安装、纯绿色、仅160KB

求C++转Java的校验和代码 - C/C++ / C++ 语言

所有的分送上,求下面的C++校验和代码转Java代码的实现:
typedef union{
unsigned long sum;
char _char[TypeSize];
}Left_Sum;

unsigned long checksum(void* pBuffer, int iLen)
{
Left_Sum leftsum;
unsigned long checksum;
unsigned long* pType = NULL;
char* pChar = NULL;
int iCount = iLen / sizeof(unsigned long);
int iLeft = iLen % sizeof(unsigned long);

if(NULL == pBuffer)
{
throw ;
}

pType = (type*)pBuffer;
pChar = (char*)pBuffer;

checksum = type(0);
leftsum.sum = type(0);

for(int i=0; i<iCount; ++i)
{
checksum += pType[i];
}

if(iLeft > 0)
{
memcpy(&leftsum._char[TypeSize-iLeft], &pChar[iLen-iLeft], iLeft);
}

return checksum + leftsum.sum;

}
自己顶起

程序不全,无法理解程序全部意思,java没有union的,所以只能从算法上模拟它
另一方法,将你的c函数做成DLL,让JAVA调用
參考我回過的:
http://topic.csdn.net/t/20050922/07/4285687.html
还有,可以利用JNI,直接用JAVA调用C函数
參考我回過的:
http://topic.csdn.net/t/20051007/10/4309986.html



是啊,java是没有union,但应该可以模拟它的算法吧
只要java和c++计算出来的结果是一样的就可以了

但你的程序中
TypeSize,type,都是怎么定义的?如果有这两个,有时间到可以帮你转转试试


这个是最后的代码,
typedef union{
unsigned long sum;


相关问答:

java日期处理 - Java / Java SE

当知道一个日期,如何把这个日期所在旬的前后两个日期取出
比如输入20090905,就输入20090901 20090910
输出20090901 20090910

取得天数后作一下判断再把这个方法用下void set(int field, int value)  
......

关于AJAX和JSP的一些小问题~ - Java / Web 开发

我JSP的页面是:
<%@ page language="java" contentType="text/html; charset=gb2312"
  %>
<script>
function Save(){
xmlHttp=GetXmlHttpObject()
if(xmlHttp==nul ......

java swing 程序如何打包 - Java / Java相关

java swing 程序如何打包成jar,然后可以通过批处理文件bat直接运行,有没有什么工具直接可以完成这两个工作?
用jar打包,把运行需要的jar拷贝到一个目录,批处理用 start javaw -cp .;其他包路径 运行

用zip ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号