2022-08-05:以下go语言代码输出什么?A:65, string;B:A, string;C:65, int;D

2022-08-05:以下go语言代码输出什么?A:65, string;B:A, string;C:65, int;D:报错。

package main

import (
    "fmt"
)

func main() {
    num := 65
    str := string(num)
    fmt.Printf("%v, %T\n", str, str)
}

答案2022-08-05:

这道题有选A的,也有选D的。但正确答案选B。不过,如果你使用 go vet 检查,会提示:conversion from int to string yields a string of one rune, not a string of digits (did you mean fmt.Sprint(x)?)。
也就是说,如果要将数字 65 转为字符串,不能使用 string(num),如果使用这种方式转,得到的是一个 rune 的字符串表示,因为字面 A 的 ASCII 码是 65,因此这里输出结果是 A,string。

在这里插入图片描述

本作品采用《CC 协议》,转载必须注明作者和本文链接
微信公众号:福大大架构师每日一题。最新面试题,涉及golang,rust,mysql,redis,云原生,算法,分布式,网络,操作系统。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!