You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift开发:如何在XCode中自动打印当前行号?

Swift开发中自动插入行号到print输出的方法

Xcode内置了预定义宏,能自动获取当前代码的行号,完全替代手动输入的方式。

常用的相关宏/字面量:

  • __LINE__:返回当前代码的行号(整数)
  • #line:Swift语法风格的行号字面量,效果和__LINE__一致
  • __FILE_NAME__:获取当前文件名(Swift 5.3+,替代旧版__FILE__的完整路径)
  • #function:获取当前所在的函数名

直接在print中使用即可实现自动行号输出:

print("\(__LINE__): \(value)")

如果需要更丰富的调试信息,可组合多个宏:

print("\(__FILE_NAME__):\(__LINE__) [\(__FUNCTION__)] \(value)")

嫌每次写宏麻烦的话,还可以封装一个自定义调试函数:

func debugLog<T>(_ content: T, file: String = #file, line: Int = #line, function: String = #function) {
    let fileName = (file as NSString).lastPathComponent
    print("\(fileName):\(line) [\(function)] \(content)")
}

调用时只需debugLog(value),就能自动输出包含文件名、行号、函数名的调试信息,定位问题更高效。

内容的提问来源于stack exchange,提问作者Manngo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 00:57:37