当前位置: 首页 > 面试题库 >

快速打印可变内存地址

祝高超
2023-03-14
问题内容

无论如何,是否可以[NSString stringWithFormat:@"%p", myVar]使用新的Swift语言从Objective-C 模拟?

例如:

let str = "A String"
println(" str value \(str) has address: ?")

问题答案:

现在,它已成为标准库的一部分:unsafeAddressOf

/// Return an UnsafePointer to the storage used for `object`.  There's
/// not much you can do with this other than use it to identify the
/// object

迅捷3

对于Swift 3,请使用withUnsafePointer

var str = "A String"
withUnsafePointer(to: &str) {
    print(" str value \(str) has address: \($0)")
}


 类似资料:
  • 问题内容: 我很好奇为什么只在var上打印内存地址就可以直接使用,但是尝试通过接口执行相同的操作却不能打印出内存地址? https://play.golang.org/p/Ko8sEVfehv 只是想在修复错误后添加它,它现在可以正常运行。测试移位内存指针 https://play.golang.org/p/BnB14-yX8B 问题答案: 因为在方法第二种情况下: 不是一个而是一个结构,是类型的

  • 问题内容: 该问题已清除,重要信息移至下面的答案。 我对内存管理有一些疑问。 我正在构建照片编辑应用程序。因此,保持较低的内存使用量很重要。另外,我不打算发布代码,因为在做一件特定的事情时,我不会发生大的内存泄漏。我将所有发生的一切都丢失了几KB / MB。遍历数万行代码以查找千字节并不有趣;) 我的应用使用了核心数据,许多cifilter内容,位置和基础知识。 我的第一个视图只是一个表视图,它占

  • 问题内容: 在Swift 2.0中,会自动添加换行符。在迅速1.2,和以前是独立的功能。因此,我如何打印一些文本而不在其中添加换行符,因为swift不再具有不添加换行符的打印功能。 问题答案: 从Swift 2.0开始,不带换行符的推荐打印方法是:

  • #include <stdio.h> int main(void) { int i = 0; char a[100]; for (i = 0; i < sizeof(a); i++) { a[i] = i; } return 0; } 技巧 gdb中使用“x”命令

  • 问题内容: 我有一些C方面的经验,对golang完全陌生。 现在在golang slice中是array的引用,其中包含指向slice的数组len和slice的上限的指针,但是该slice也将分配在内存中,我想打印该内存的地址。但是无法做到这一点。 问题答案: http://golang.org/pkg/fmt/ 将打印地址。

  • 并且(您刚才看到的是演示的一部分,下面是类的部分内容) 我真的不知道为什么它不打印字符串的东西:(所有的类(稍后将删除) }