我有一个类似3.14159
的数字,我希望它是3.1
出于某种原因,Arduino对图书馆很挑剔。目前我不能使用string
库。
我最终找到了一个很棒的解决方案。事实证明Arduino有一个方法!这只是String()
方法。因此,为了转换3.14159
,只需键入⤵︎
float num = 3.14159
String str1 = String(num, 1) // 3.1
String str2 = String(num, 2) // 3.14
String str3 = String(num, 3) // 3.141
所以逗号右边是小数位数参数。它有很多功能,但这是过载之一。你可以在这里看到它们!
由于默认情况下sprintf
在标准Arduino环境中不支持浮点运算,avr-gcc附带了dtostrf((,它可以满足您的需要。此处的示例用法