c - arm-none-eabi-gcc : Printing float number using printf

标签 c gcc arm printf

我正在为 SAM3N arm cortex-M3 微 Controller 编写 C 程序。当我尝试打印 float 时,它只打印“f”。 示例:printf("%f",43.12); 仅打印 f,而不打印 43.12

但是用整数打印效果很好。

如何启用 float 的完整打印?我知道编译器默认情况下禁用浮点打印以减小代码大小(即,它们似乎链接了简化版本)。另外请注意,makefile 中没有使用 CFLAGS=-Dprintf=iprintf

工具详情:

  • ARM/GNU C 编译器:(crosstool-NG 1.13.1 - Atmel 版本:13)4.6.1
  • 上述工具随 Atmel studio 6.0 一起提供。

最佳答案

你能试试吗,在链接器设置中添加以下选项

-lc -lrdimon -u _printf_float

它在 ARM-CORTEXM0 中对我有用

关于c - arm-none-eabi-gcc : Printing float number using printf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12703307/

相关文章:

c - 循环时求平均值,总和不会清除,因此会不断添加上一个循环条目中的数字

c++ - -llibrary 如何确定和定位对象文件名

c++ - ARM 的自定义堆栈跟踪实现

c - 如何使光标像 curses/C 中的文本编辑器/终端一样工作?

C-编号检查功能给出无限循环

很酷的 GCC 内置插件

c++ - 编译 proftpd 并在安装目录中包含库拷贝

linux - 为什么我们需要嵌入式设备中的引导加载程序?

arm - Qemu:跟踪MMU操作

php - 在linux服务器上运行C程序