Swift 原始指標

2021-07-11 22:16:31 字數 2001 閱讀 3471

常量, 原始指標 (c表達法 type const*)

unsafepointer

原始指標 (c表達法 type *)

unsafemutablepointer

初始化

init()

init(void)

init(copaquepointer)

init(unsafepointer)

init(unsafemutablepointer)

init(int)

init(uint)

提示public typealias void = ()

列印記憶體位址

開闢, 以模版型別為單位的, 以引數int為數量的記憶體空間

提示@warn_unused_result未繫結的返回值予以警告

初始化

交出所有權

提示@warn_unused_result未繫結的返回值予以警告

銷毀物件

銷毀開闢的記憶體空間

下標

指標強制轉換

提示@warn_unused_result未繫結的返回值予以警告

c code

void * getdisplaybaseaddress()

swift code

@asmname("getdisplaybaseaddress")

func c_getdisplaybaseaddress() ->unsafemutablepointer

var a :unsafemutablepointer= c_getdisplaybaseaddress()

var b :unsafemutablepointer= unsafebitcast(a, unsafemutablepointer.self)

對變數的指標操作

c code

void function(long long int const* a){}

swift code

@asmname(「function」) func c_function(b :unsafepointer< int64>) ->void

var a :int64 = 10000

withunsafepointer(&a,

swift 檔案main.swift

var p :unsafemutablepointer= getdisplaybaseaddress()

var p2 = unsafebitcast(p, int.self)

print("0x\(string(p2, radix: 16))")

swift 函式 函式指標

main.swift functiontest 04 import foundation println 函式測試 testfunction functiontest.swift functiontest 04 import foundation 函式以func開頭 表示是乙個函式 引數和引數以,v...

swift中的指標

swift語言為了簡化,把指標 化了。沒有像oc中那樣的 把底層的問題交給c語言去處理,我們可以在swift中呼叫c 語言來解決。當然,oc也是可以呼叫的。但是在某些場景下,這種呼叫可能不是很方便。比如,基於位元組流的解析中,這時我們所接受的資料是要進行解析,可能用到指標。如果在c中去呼叫,當然也是...

swift 生命週期 Swift 中的指標

題圖來自網際網路 指標是 c c 中乙個很重要的概念,是這些相對低階的語言的靈魂,然而 swift 似乎天生對指標十分不友好,繁瑣的用法讓很多初學者一上來十分摸不著頭腦。本文就簡單談談 swift 中指標的一些用法。為什麼要用指標?其實使用 swift 來做 ios 開發時不會經常與指標打交道,fo...