CH32V307芯片 float a = sqrtf(b) 编译错误?

发现很奇怪,

sqrtf(0.5) 可以,但是换成变量就不行了。

编译报错

undefined reference to `sqrtf'

代码如下:


#include "debug.h"

#include


int main(void)

{

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);

Delay_Init();

USART_Printf_Init(115200);

printf("SystemClk:%d\r\n",SystemCoreClock);


printf("This is printf example\r\n");


const volatile float c = 0.00006;

float b = c;

//memcpy(&b, &c, sizeof(b));

float a = sqrtf(b);


while(1)

    {


}

}


求解 谢谢!

第二行 math.h 不知道发帖后 为什么消失了


您好,在如下图位置增加相关参数即可解决math.h调用的问题:

image.png


多谢!


只有登录才能回复,可以选择微信账号登录