Arduino 无法在初始化时将'float'转换为'const char*'

Arduino cannot convert 'float' to 'const char*' in initialization

本文关键字:转换 const char float 初始化 Arduino      更新时间:2023-10-16
float diff = 0;
const char* str[] = {"Err: ZPROBE: ",diff};
LCD_ALERTMESSAGEPGM(str);

使用上面的代码,我得到这个错误。有人知道如何从"Err: ZPROBE: "和(浮点)diff创建单个字符串吗?

exit status 1
cannot convert 'float' to 'const char*' in initializatio

抱歉应该在我使用的环境中添加 - 'string' : is not a member of 'std',

好的,现在尝试这个

String str = String("Err: ZPROBE: " , diff);

但得到这个

call of overloaded 'String(const char [14], float&)' is ambiguous

要将floatdouble转换为string,您可以使用stdlib.h标头中可用的dtostrf()。另请参阅字符串对象构造函数的参考以正确构造String对象。