我无法导入malloc/malloc.h
以使用malloc_size()
来查看对象的大小。是Swift
还是我错了:import malloc/malloc.h
答案 0 :(得分:7)
Unix / POSIX内容全部在Darwin
模块中。
import Darwin
let r = rand()
qsort_b(buffer, 0, 10, sortFunc)
malloc
也在那里,但它不会对你有好处 - 它会返回一个不透明的指针。
答案 1 :(得分:0)
您无法导入C标头。为了在Swift中导入C库(或Objective-C框架),它必须在一个模块中。我不知道包含malloc的模块。
答案 2 :(得分:0)
您是否考虑使用过桥头?
创建名为-Bridging-Header-File.h的.h文件 然后在您的项目构建设置中引用它(在“Swift编译器”下查找“Objective C Bridging Header”):
$(SRCROOT)/<Your-Project-Name>-Bridging-Header.h
现在malloc_size()应该可用
答案 3 :(得分:0)
你想使用&#34; malloc_size&#34;?你不需要导入&#34; malloc.h&#34;要做到这一点,假设你要么包括基金会或可可。
这在游乐场很好用:
import Foundation
let chars = BytePtr.alloc( 1000 )
let qty_of_bytes_allocated = malloc_size( chars )
println( qty_of_bytes_allocated )