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



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

  

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

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

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

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

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

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




  

相关话题

  C# 如何在调用控件时做到 Thread-safe(线程安全)? 
  相对论刚提出时,号称全球能完全理解的人不超过十人,现在却成为理工科必修课程,是我们智商提高了吗? 
  什么是 Agile Software Development(敏捷软件开发)? 
  准大一,零基础自学C语言,有什么简单易懂的自学书籍和课程推荐吗? 
  c语言初学,请问用什么软件比较好? 
  GB2312及其扩展标准和Unicode之间有什么区别和优劣势? 
  现代软件开发中,详细设计这一步要如何来做? 
  设计模式是不是有点太「玄」了? 
  如何编写能够监听特定程序或全系统所有Http请求的.Net程序? 
  求十亿内所有质数的和,怎么做最快? 

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





© 2025-05-06 - tinynew.org. All Rights Reserved.
© 2025-05-06 - tinynew.org. 保留所有权利