我正在开发 iOS 应用程序,我需要 base_convert 函数。应用程序也使用 base_convert 与 PHP 服务器通信。在 PHP 中我使用这个:
base_convert($something,16,36) and base_convert($something,36,16)
我搜索类似于我在 PHP 中使用的东西,但搜索的是 Xcode(iOS 应用程序)。谢谢你。
这里有一个 C++ 实现:
http://thinkdiff.net/mixed/base-conversion-handle-upto-36-bases/
这将使用最多 36 个基数来回转换。不确定您是否需要更多。
有一个专门针对Base 36的完整维基百科页面,其中包含您可以适应的各种形式的源代码(例如,C 代码应该直接放入,无需修改,但它不是 Objective-c)
还有如何将 Decimal 转换为 base36,它只进行单向转换,但代码是objective-c,因此您可以了解如何调整维基百科代码。
至于为什么base 36我学到了:
因此,Base 36 是使用 ASCII 字符的最紧凑的不区分大小写的字母数字系统
将 David Hope 建议的代码改编为 Objective-C,在这里: