Swift
Swift
Receive a 16-bit Integer from a Socket
See more Socket/SSL/TLS Examples
Demonstrates Socket.ReceiveInt16, which reads exactly two bytes as a 16-bit integer and stores the result in the ReceivedInt property. Byte order and signedness are selectable.
Background. Fixed-size integers and length prefixes are common building blocks for application-defined binary protocols. Byte order is selectable, with big-endian being network byte order.
Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
let socket = CkoSocket()!
// Connect to the server using TLS.
var bTls: Bool = true
var maxWaitMs: Int = 5000
success = socket.connect(hostname: "example.com", port: 5000, ssl: bTls, maxWaitMs: maxWaitMs)
if success == false {
print("\(socket.lastErrorText!)")
return
}
// Read exactly two bytes as a 16-bit integer and store the result in the ReceivedInt property.
// The 1st argument selects byte order (true = big-endian); the 2nd selects unsigned interpretation.
var bBigEndian: Bool = true
var bUnsigned: Bool = false
success = socket.receiveInt16(bigEndian: bBigEndian, bUnsigned: bUnsigned)
if success == false {
print("\(socket.lastErrorText!)")
return
}
print("Received 16-bit integer: \(socket.receivedInt.intValue)")
}