我是新手,我想在其中打印struct变量的地址,这是我的程序
type Rect struct {
width int
name int
}
func main() {
r := Rect{4,6}
p := &r
p.width = 15
fmt.Println("-----",&p,r,p,&r)
}
这个的输出
_____0x40c130 {15 6} &{15 6} &{15 6}
但是我想打印r变量的地址,因为我知道’&’代表地址,’*’指向指针位置的值,但是在这里我无法打印r的地址,我正在使用go-的在线编辑器lang
https://play.golang.org/
同样,我想将此地址存储在某个变量中。
当您使用来打印值时fmt.Println()
,将使用默认格式。引用以下文件的doc
fmt
:
%v的默认格式为:
bool: %t int, int8 etc.: %d uint, uint8 etc.: %d, %#x if printed with %#v float32, complex64, etc: %g string: %s chan: %p pointer: %p
对于复合对象,将使用以下规则递归地打印元素,其布局如下:
struct: {field0 field1 ...} array, slice: [elem0 elem1 ...] maps: map[key1:value1 key2:value2 ...] pointer to above: &{}, &[], &map[]
结构值的地址是最后一行,因此将其视为特殊字符并因此使用&{}
语法进行打印。
如果要打印其地址,请不要使用默认格式,而要使用格式字符串,并使用%p
动词指定您要的地址(指针):
fmt.Printf("%p\n", &r)
这将输出(在Go Playground上尝试):
0x414020
问题内容: 如何打印(在控制台),,等这个结构中Golang的? 问题答案: 要在结构中打印字段名称: 从包装中: 打印结构时,加号()添加字段名称 假设您有一个Project的实例(在’ ‘中) 文章JSON和Go将提供有关如何从JSON结构中检索值的更多详细信息。 此“按示例进行搜索”页面提供了另一种技术: 那会打印: 如果没有任何实例,则需要 使用反射 来显示给定结构的字段名称,如本例所示。
如何在Golang中打印(在控制台中)该结构的、、等?
问题内容: Go中有类似Ruby的东西吗? 例如,在Ruby中,您可以编写: 输出将是: 我能找到的最接近的东西是 问题答案: 如果您的目标是避免导入第三方软件包,则另一个选择是使用json.MarshalIndent: 输出: 工作示例:http : //play.golang.org/p/SNdn7DsBjy
问题内容: 假设我有一个名为choice它的变量等于2。我将如何访问该变量的名称?相当于 用于制作字典。有一个很好的方法可以做到这一点,而我只是想念它。 编辑: 因此,这样做的原因是。我正在运行一些数据分析的东西,我在运行时使用多个我想调整或不调整的参数来调用程序。我从格式为.config的文件中读取了上次运行中使用的参数 当提示你输入值时,将显示先前使用的值,并且空字符串输入将使用先前使用的值。
使用和不起作用。有没有别的办法我可以打印号码的类型?
问题内容: 我正在尝试在Java的打印行中打印在webdriver test中使用的测试数据 我需要打印内的课堂上使用多个变量函数(/ /不管)。 我需要在打印语句中进行以下打印: 名字:( 我使用的变量值) 姓氏:( 我使用的变量值) 使用如下所示的方法可以得到准确的结果。 但是我需要减少行数并使用更有效的方法。 谢谢! 问题答案: 您可以使用1做到这一点: