我试图在GNU情节中绘制一个函数,我的情节与文章中的情节不同.在阅读GNU将函数解释为C时,我尝试用C编写函数.同样的问题.
最终我发现这个问题可能会出现这个问题:
#include <stdio.h>
#include <stdlib.h>
int main()
{
double p = 1.0;
double pMinusOneHalf1 = p - (1.0/2.0);
double pMinusOneHalf2 = p - (1/2);
printf("\nFirst = %lf \n Second = %lf\n\n", pMinusOneHalf1, pMinusOneHalf2);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它给出了输出
First = 0.500000
Second = 1.000000
Run Code Online (Sandbox Code Playgroud)
只是想知道是否有人解释为什么C将假设"1"和"2"作为DOUBLE表达式中的INT.
对于人们来说似乎很容易被抓住.gcc的-Wall选项甚至没有评论它.