ich konvertieren wollen so etwas wie (* float32) bis (* int32)Wie kann ich Zeigertyp in golang
ich tun, um diese
var f float32 = 0.0
var p *int32 = (*int32)(&f) // error!
// cannot convert &f (type *float32) to type *int32
konvertieren Wie kann ich das, was ich bin fertig in C
float f = 0.0;
int *ip = (*int) &fp;
Sie nicht diese in Go tun können, als Go nicht C ist – Volker
Ich glaube nicht, Ihre C-Code funktioniert. Es wird einfach ein Pointer auf einen float in einen Zeiger auf einen int geworfen, was bedeutet, dass Sie die Laufzeit in die Irre führen, da an dieser Adresse ein int gespeichert ist (ints und floats haben sehr unterschiedliche binäre Formate). Go verhindern, dass Sie diese Art von Fehler machen (trotz der Unterstützung des Konzepts des Zeigers). –
Möchten Sie _really_ möchten, dass der Gleitkommawert direkt als int gelesen wird, oder versuchen Sie, den float32-Wert in einen int32-Wert zu konvertieren? – JimB