小编Mr.*_*key的帖子

printf函数如何在C中运行?

我在测试函数printf时遇到了一个问题:

首先我写这样的代码:

int main(void)
{
    char a = 'a';
    printf("a = %f\n", a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是

在此输入图像描述

然后我写代码:

int main(void)
{
    float b = 'a';
    printf("b = %f\n", b);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是

在此输入图像描述

然后我写代码:

int main(void)
{
    char a = 'a';
    float b = 'a';
    printf("b = %f\n", b);
    printf("a = %f\n", a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是

在此输入图像描述

所以我很困惑为什么在第一个程序a= 0.000000和第三个程序a= 97.000000
该功能如何printf()运作?
如何符号%f,%d工作?

c

5
推荐指数
2
解决办法
394
查看次数

计算机如何比较底层的两个数字?

我编写了如下代码:

int a = -1;
unsigned int b = 0xffffffff;

if (a == b)
    printf("a == b\n");
else
    printf("a != b\n");

printf("a = %x b = %x\n", a, b);
return 0;
Run Code Online (Sandbox Code Playgroud)

结果如下:
在此输入图像描述

它表明a和b是相等的.所以我想知道计算机如何做出判断?

c

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

标签 统计

c ×2