我有以下结构:
typedef struct {
float battery;
float other;
float humidity;
} rtcStore;
rtcStore rtcMem;
我需要将结构中存储的数据发送到thingspeak.com。但是,要发送数据,我需要将我的结构转换为字符串。谁能告诉我怎么做?如果用C语言完成它会更有帮助。
答案 0 :(得分:4)
您可以使用snprintf(https://linux.die.net/man/3/snprintf),如下所示:
char buffer[100];
snprintf(buffer, 100, "%.4f %.4f %.4f", rtcMem.battery, rtcMem.other, rtcMem.humidity)
这将确保您的信息不会超过100个字符。看看文档。您还可以检查snprintf的返回值,以确保一切正常。请参阅文档中的示例。
另一方面,您可以使用 strtok 解析字符串以提取字段并使用字符串浮动转换器,如 strtof
答案 1 :(得分:2)
使用sprintf将其转换为字符串。