【发布时间】:2019-08-31 02:40:43
【问题描述】:
当将字符串 "3px" 转换为浮点数时,C 可以处理它,但 go 不能。在go中,有没有办法将字符串的最长有效前缀转换为浮点数?
C:
#include <stdlib.h>
#include <stdio.h>
int main() {
printf("%f", atof("3px"));
// result: 3.0
return 0;
}
去:
package main
import "fmt"
import "strconv"
func main() {
value, err := strconv.ParseFloat("3px", 64)
fmt.Printf("%f, %v\n", value, err)
// strconv.ParseFloat: parsing "3px": invalid syntax
}
【问题讨论】:
-
只去掉
px部分?是否需要处理任意非数字后缀?
标签: go