跟大神请教

我们是win32的服务器 然后用的cocos的客户端 cocos编译的win32程序 跟android两个不同平台的程序

然后那创建人物的时候 会下发一个int64 也就是longlong的字段 win32没问题 但是android就会出现崩溃 。。

大神:“win32 跟 arm……字序一样吗?

那又如何检查自序那 ?

大神:”我能想到的最快最土的办法就是,把一个 int64 看成 char[8],然后打印出来“

崩溃如图

fatal siganl 7(SIGBUS)at

哦,SIGBUS……
大神
这个可能不是 pack 的问题
大神
pack 也无法保证
大神
如果是 SIGBUS 的话,我理解系统可能希望 sBuf+index-sizeof ( __int64 ) 这个地址是一个对齐在 64 位的地址

如果 sBuf 里全都是 64 位数据的话,问题倒也不大,但是如果你还有 GetInt32,GetChar 之类的接口,不按照 8 字节对齐的协议去修改 index 的话,可能有些 cpu 就受不了了——我知道 MIPS 有这说法,ARM 还真不了解

那只能避免使用int64?

大神

没关系,一般 RISC 都还会有 unaligned 指令集的吧……

大神

没关系,一般 RISC 都还会有 unaligned 指令集的吧……

__int64 GetInt64 ( char* sBuf, int& index, unsigned int nBufferLen )
{
          __int64 n;
index += sizeof ( __int64 );
          memcpy(&n, sBuf+index-sizeof ( __int64 ), sizeof(__int64));
return n;
};  虽然没有考虑字序 Byte Order 的问题 这么处理 希望 memcpy 中的指令对操作数的要求可以是 unaligned 的 

看了log.txt得出结论  不过异常原因基本上八九不离十了:code 1 (BUS_ADRALN),我猜 ADRALN 就是 Address Alignment 之类的缩写,肯定是这个出问题了

fault addr 776a2db3 这句很要命,这个地址充其量就对齐在 1 字节上吧,或者说根本没对齐……

大神

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka3934.html

你可以抽空看看这个,这是 ARM 编译器对未对齐指针的优化,可能会造成干扰

ps 总之最后按照大神的思路算是把问题解决了 虽然我还是云里雾里的

时间: 2024-07-29 15:51:17

跟大神请教的相关文章

我想学号图论求大神请教

tonxg47zcl诿贸坷攘褂既缆妨赐偾<http://weibo.com/p/230927988060986835476480> pl4bbe897y救录粱匪琶俸德斜忱勒<http://weibo.com/p/230927988060373015863296> al0qbb3oxg排帜慰魏蹦等好趟蕾侨<http://weibo.com/p/230927988060743003807744> wl8f7e05mo套瞬律贫舶焕谜贾沉缚<http://weibo.co

请教大神怎么配置tortoisegit和gitlab

请教各位,我想使用tortoisegit克隆gitlab上的项目 使用http方式 URL为: http://192.168.1.205:8080/qh/SmartMD.git 提示未能成功结束 退出码:128 这个项目的秘钥和配置文件为: -----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEA0U4MQuqJcy9AZ/yx0S763HEJ/K9n8YJsx1sz/OFA33ZGEbqW ALhL7vHDgucpFXaqPQYkNkGXlsbxFvhJ

求教各路大神,Fillder的证书一直无法在手机上打开,请教怎么解决

我跟足大神们的设置,软件是Fiddler4,手机是ios12.3.1. FD上该打勾的打勾了,该装证书的也装了,有帖子说重装证书和软件我也都试过,电脑也下了NET Framework 4.7_4.7.03062 手机的Wifi也设置好了Http代理,但它就是没办法在浏览器打开ip:port这个端口去下载证书,请问是什么问题呀... 原文地址:https://www.cnblogs.com/Casux/p/11493316.html

&quot;菜鸟&quot;与大神程序员之间的差别(转载)

前段时间看到一篇文章,写得很好,针对菜鸟与大神之间的差别做了很客观.很透彻的分析,现在将文章转载过来,原文地址:http://www.apkbus.com/forum.php?mod=viewthread&tid=239356&highlight=%E8%8F%9C%E9%B8%9F “菜鸟”和“大神” 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术 的东西.首先请您先想想这几个问题.现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有

学会思考--菜鸟程序员晋升大神之路

"菜鸟"和"大神" 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术的东西.首先请您先想想这几个问题.现在社会上有很多程序员,那您是否可想过程序 员为什么会有不同的水平?你又是哪一类的程序员?"菜鸟"程序员和"大神"程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里? 上面很多一连串的问题,没有把你搞晕吧!那就听我一一给您分析这个问题背后的答案.确切的说程序员分为"菜鸟"

“菜鸟”程序员和“大神”程序员差距在哪里

“菜鸟”和“大神” 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术的东西.首先请您先想想这几个问题.现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有不同的水平?你又是哪一类的程序员?“菜鸟”程序员和“大神”程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里? 上面很多一连串的问题,没有把你搞晕吧!那就听我一一给您分析这个问题背后的答案.确切的说程序员分为“菜鸟”程序员和“大神”程序员. 一个程序员有多优秀,就得看他写的代码!

大学里如何成为技术大神

本文由PurpleSword(jzj1993)原创,转载请注明.原文网址 http://blog.csdn.net/jzj1993 总是有同学问我怎么学很多技术,好奇如何成为所谓的大神. 事实上,这篇文章是结合我的一些经历,讲述应该怎么学习技术,并不是要讲怎么成为大神.没有所谓的成功学,只有充满智慧的思考,脚踏实地的实干,和越来越近的理想,还有机遇和运气.之所以用这个标题,无非是吸引更多人.尤其是很多对成为大神抱有不切实际的幻想的人来看.希望读者能从中得到一些东西,没有浪费看这篇文的时间.这篇文

[悟]你所憧憬的大神本质

这是一个最好的时代,也是一个最坏的时代:这是明智的时代,这是愚昧的时代:这是信任的纪元,这是怀疑的纪元:这是光明的季节,这是黑暗的季节:这是希望的春日,这是失望的冬日:我们面前应有尽有,我们面前一无所有:我们都将直上天堂,我们都将直下地狱...狄更斯 原谅我一直不写技术贴,老是B叨叨的来写水贴,但是对于Android我实在是没什么好写的了,我不做framework,不做游戏,就app层那么点东西,实在是没必要拿粗来翻来覆去的说,网上能搜到的一大把,你们每次问粗来的奇葩问题我都是google粗来再

菜鸟”和“大神”

菜鸟”和“大神” 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术 的东西.首先请您先想想这几个问题.现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有不同的水平?你又是哪一类的程 序员?“菜鸟”程序员和“大神”程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里? 上面很多一连串的问题,没有把你搞晕吧!那就听我一一给您分析这个问题背后的答案.确切的说程序员分为“菜鸟”程序员和“大神”程序员. 一个程序员有多优秀,就得看他写的代码