我正在尝试htonl()
在Swift中使用设置整数字节序,但是编译器没有找到该htonl()
方法。
我一直以此为参考:将NSInteger附加到NSMutableData
这是我的代码:
import Foundation
import CFNetwork
import CoreFoundation
var data = NSMutableData()
var number : UInt32 = 12
var convertedNumber : UInt32 = htonl(number)
data.appendBytes(&convertedNumber, length: 4)
我刚刚在操场上跑步。错误是:
Use of unresolved identifier 'htonl'
更新
:马丁R的答案是当前版本的Swift的正确答案:https :
//stackoverflow.com/a/24653879/195691
-
您应该使用CFSwapInt32HostToBig()
CoreFoundation方法,因为htonl
它很可能以C宏的形式实现,因此无法迅速使用。
但是,看起来这在Swift操场上目前无法使用。Playground execution failed: error: error: Couldn't lookup symbols: __OSSwapInt32
尽管CoreFoundation文档现在在Swift中为其字节交换方法包括了方法签名,但我还是遇到了错误。
有趣的是,它看起来像的至少一部分<arpa/inet.h>
已经被移植到迅速,如方法,如inet_ntoa()
和inet_addr()
可供斯威夫特,但htonl
家庭是没有的。
问题内容: 我想在应用程序委托中设置rootViewController .. 问题答案: 你可以做这样的事情。
我想在不同的情况下芳香地改变一些约束。 声明来自情节提要的约束: 这是我的代码,我想在其中更改约束: 但是约束仍然没有改变。 这是我的手机ForRowAt func: 提前感谢您的帮助!
问题内容: 我想要一个使用样式的单元格。 我最初的Objective-C代码是: 在已经在SO上搜索了几个问题之后,我想像这样在Swift中编写它: 但这并不能让我说我想要一种风格。所以我尝试了这个: 这给了我一个牢房,但是却没有让我。 我已经研究了更多内容,并观看了此视频教程,但是他创建了一个单独的对象,我认为这是不必要的,因为我之前在Obj- C中实现了相同的效果。 有任何想法吗?谢谢。 问题
问题内容: 在早期版本的Swift中,可以使用以下代码创建延迟: 但现在,斯威夫特3时,Xcode自动改变6个不同的东西,但随后出现以下错误:“无法转换到预期值又名”。 在Swift 3中运行一系列代码之前,如何创建延迟? 问题答案: 经过大量研究,我终于找到了答案。 这会在Swift 3和Swift 4中创建所需的“等待”效果。
问题内容: 我知道Java不允许无符号类型,所以我想知道它如何将整数转换为字节。假设我有一个值为255的整数a,并且将该整数转换为一个字节。该值表示在字节11111111中吗?换句话说,该值是否更多地视为带符号的8位整数,还是仅直接复制该整数的后8位? 问题答案: 这称为缩小原始转换。根据规格: 将有符号整数缩小为整数类型 T会 简单地丢弃除 n个 最低阶位以外的所有位,其中 n 是用于表示类型
我已经尝试在Objective-C中创建HTTP Get。 它使用中的,并使用选择或。 并通过以下代码设置标头: