百科问答小站 logo
百科问答小站 font logo



我试图用 C 语言的共用体来实现 Base64 编码,为什么失败了? 第1页

  

user avatar   yang-leonier 网友的相关建议: 
      

用了好几个编译器,结果都是33 9 54 24.

应该就像下面答案用反汇编看的,位域和一般结构体成员在内存中分布不同,会自动按照当前字节序排列而导致错误。

直接把两个结构体改为d, c, b, a的顺序就对了。

位域这个东西是依赖于实现的,一般情况下都不怎么推荐用。

你这个问题在StackOverflow有人回答过了。




  

相关话题

  亲爱的程序员们,一天写多少代码才算达标? 
  在顶级游戏开发的过程中需要怎样的编程实力? 
  编程学到可以「抢月饼」的程度,要选哪一门语言入门比较容易,需要多长时间? 
  c语言中的sizeof()是如何分辨数组名和指针的? 
  你写过哪些真正生产可用的 Python 装饰器? 
  大一新生做C语言课设被强制要求使用 Borland C++ 3.1,此IDE相对于其他IDE有何优点? 
  用 C# 写个方法解析简单的 JSON 字符串有哪些思路? 
  世界上学习语言难易度排行是怎样的? 
  对于C#与C++之间的数据传输,用GCHandle或Marshal是否就是最好的方案了? 
  为什么C语言能长盛不衰? 

前一个讨论
日本08年经融危机是怎么解决的?
下一个讨论
如何看待漫画《进击的巨人》最终话「加页」部分的情报?





© 2025-07-01 - tinynew.org. All Rights Reserved.
© 2025-07-01 - tinynew.org. 保留所有权利