相关疑难解决方法(0)

在Objective-C/C中的数字/浮点数后面的"f"

我在Apple文档中找不到这个:这里的数字后面的"f"表示什么?这是来自C还是Objective-C?不将它添加到常数中有什么区别吗?

CGRect frame = CGRectMake(0.0f, 0.0f, 320.0f, 50.0f);
Run Code Online (Sandbox Code Playgroud)

你能解释一下为什么我不会写:

CGRect frame = CGRectMake(0, 0, 320, 50);
Run Code Online (Sandbox Code Playgroud)

c floating-point objective-c

100
推荐指数
6
解决办法
6万
查看次数

分配给“float”时,附加“f”何时会更改浮动常量的值?

f在将常量分配给 a 时,将an应用于浮点常量似乎没有什么区别float

int main(void) {
  float f;
  //  1 2345678901234567
  f = 3.1415926535897932;
  printf("%.6a  %.8f  pi 3.1415926535897932\n", f, f);
  f = 3.1415926535897932f;              // v
  printf("%.6a  %.8f  pi 3.1415926535897932f\n", f, f);
}
Run Code Online (Sandbox Code Playgroud)

有或没有f,值是一样的

// value       value          code 
0x1.921fb6p+1  3.14159274  pi 3.1415926535897932
0x1.921fb6p+1  3.14159274  pi 3.1415926535897932f
Run Code Online (Sandbox Code Playgroud)

为什么要使用f

c floating-point

7
推荐指数
1
解决办法
108
查看次数

"2.00"和"2.00f"之间是否存在功能差异?

我问,因为我使用的是Box2D库,它主要调用float参数.虽然我看到很多使用0.00f格式的示例代码,但 我不太确定它与普通旧0.00之间是否存在实际差异.我会被通过不附加额外以后伤害自己˚F?这是速度的事吗?当其他人不愿意时,是否存在需要f加数的某种含义?

TL;博士?我为什么要使用0.00f而不是0.00?

c++ floating-point box2d

3
推荐指数
2
解决办法
1473
查看次数

C编程浮点数?

所以,我正在阅读C编程.我预订了这个练习:

Write a program which asks the user to enter a dollars-and-cents amount, then displays the amount with 5% added?

方案:

#include <stdio.h>

int main(void) {

    float original_amount;

    printf("Enter an amount: ");
    scanf("%f", &original_amount);
    printf("With tax added: $%.2f\n", original_amount * 1.05f);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道是什么.3f意思(在...之后应该有3位数字),但是什么1.05f意思?

c floating-point

1
推荐指数
1
解决办法
1030
查看次数

C++定义宏可以将浮点文字重写为双字面值,还是至少删除后缀?

#ifdef DOUBLE_PRECISION_COMPUTE
    #define MAKE_PRECISE(N) ...
#endif
// if not defined, leave as it is. MAKE_PRECISE(N) (N)
Run Code Online (Sandbox Code Playgroud)

上面的宏(用右边的redifiniton替换"......")可以进行下面的操作吗?

double PI=MAKE_PRECISE(3.14159265359f);
Run Code Online (Sandbox Code Playgroud)

double PI=3.14159265359;

double area= MAKE_PRECISE(3.14159265359f)*r*r;
Run Code Online (Sandbox Code Playgroud)

double area= 3.14159265359*r*r;
Run Code Online (Sandbox Code Playgroud)

c++ macros

0
推荐指数
1
解决办法
133
查看次数

标签 统计

floating-point ×4

c ×3

c++ ×2

box2d ×1

macros ×1

objective-c ×1