0

好吧,伙计们只是想弄清楚为什么这不会像预期的那样吐出 0.00003 答案。较大项目的一部分,如果此修复不适用于整个项目,将发布。

#include <stdio.h>

#define INPUT_C 0.003
#define H_FORWARD_CURRENT  100


int main(void) {
   float ib;
   ib = INPUT_C / H_FORWARD_CURRENT;
   printf("ib = %.5f", &ib);
   return (0);
 }
4

3 回答 3

6

因为您试图将地址打印ib为浮点数:

 printf("ib = %.5f", &ib);

应该

printf("ib = %.5f", ib);
于 2013-03-19T04:22:23.700 回答
3

您不需要 在 printf&之前添加 & 操作符ib

printf("ib = %.5f", &ib);
                    ^ wrong 

纠正它,如:

printf("ib = %.5f", ib);
于 2013-03-19T04:22:27.390 回答
1

从 printf() 中的 &ib 中删除 &。

printf("ib = %.5f", ib); 
于 2013-03-19T04:22:49.047 回答