Zig语言是否支持单表达式函数的特殊语法?
Zig 单表达式函数与隐式返回的正确用法
关于AI生成的错误语法
- ChatGPT提供的
=>单表达式函数简写语法并非Zig官方支持的语法,截至Zig 0.12版本,官方从未引入过该写法,因此编译时会报错expected ';' or block after function prototype,这是符合预期的结果。 - Perplexity推荐的无
return隐式返回写法同样错误,Zig不支持普通函数通过省略return和分号来隐式返回值。
Zig 函数返回值的正确写法
所有普通函数必须通过return关键字显式返回对应类型的值,单表达式函数的正确写法如下:
fn add(x: i32, y: i32) i32 { return x + y; }
特殊情况:main函数的隐式返回
唯一的例外是main函数,若未显式编写return语句,Zig会默认返回0给操作系统,示例:
pub fn main() void { // 无需显式return,默认返回0 }
内容的提问来源于stack exchange,提问作者hkBst
相关产品推荐
相关产品推荐

