在使用VisualStudioC++ 2010运行程序时,我似乎遇到了一个非常奇怪的问题。下面是(非常简单的)代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void recieve(double, double);
void simple_pass();
void recieve(double x, double y)
{
printf("%d %d\n", x, y);
}
void main(int argc , char **argv)
{
simple_pass();
}
void simple_pass()
{
recieve (0.25, 0.25);
recieve (0.25, 0.75);
recieve (0.75, 0.5);
}
打印值时,x总是0,y是大于10亿的值。
谢谢!
最佳答案
%d
表示整数,%lf
表示双倍。
现在大多数编译器都会给你一个警告。。。