我正在使用AtmelStudio在AVR XMEGA微控制器上编程。
我想把一个字符串转换成浮点数,该字符串称为token2
,其值为"8.604165"
我已经尝试了一些函数:
float lon = atof(token2); printf("lon=%f", lon);
返回lon=?
float lon = strtod(token2, NULL); printf("lon=%f", lon);
返回lon=?
float lon = strtof(token2, NULL); printf("lon=%f", lon);
出现错误undefined reference to strtof
,即使包括了<stdlib.h>
我做错了什么吗?
printf
,而不是转换。尝试使用printf("lon=%f", 8.604165);
,并告诉我们你看到了什么。顺便说一句,在第三个要点中,我不会描述它为 '返回一个错误',因为这里没有 "return"(这是编译错误,而不是运行时错误)。 - barak manosatof
和strtod
后lon
的值是多少。 - barak manos#include <stdlib.h>
?代码是否使用以下定义之一进行编译:_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L; 或 cc -std=c99
? - user3629249