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



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

  

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

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

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

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

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

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




  

相关话题

  产品经理哪些话最暴露对编程的无知? 
  从操作系统内存管理来说,malloc申请一块内存的背后原理是什么? 
  我是一名编程爱好者,我喜欢把一些好书重复的读,而不是热衷于每天打代码。请问我这个习惯是好的还是坏的? 
  windows10 界面是用什么语言编写的?.NET在最新的操作系统中有哪些应用 
  同事离职,我接盘了个垃圾项目,该如何是好? 
  中国的程序员群体是否已经过多了? 
  java为什么不支持泛型数组? 
  你在 GitHub 上看到过哪些有意思的 Issue? 
  有没有什么程序库使得我们可以比较方便的在windows下使用比较新版本的opengl的? 
  C 语言中指针数组和数组指针、函数指针、指向函数的指针等等该怎么理解? 

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





© 2024-05-20 - tinynew.org. All Rights Reserved.
© 2024-05-20 - tinynew.org. 保留所有权利