除非执行 strcpy 命令,否则无法更改变量的值

标签 c

我正在阅读《C 编程书》,我了解该程序的功能,但是,我不明白一件事。

我不明白 fahr 如何作为变量发挥作用。 fahr 有两个值还是一个值?因为我认为一旦你为变量写入了一个值,你就无法更改它,除非你执行命令 strcpy。也许我错了,有人可以帮我澄清吗?

来源:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    float fahr, celsius;
    int lower,upper, step;

    lower = 0;
    upper = 700;
    step = 2;

    fahr = lower;
    printf("Fahrenheit\tCelsius\n");
    while (fahr <= upper) 
    {
        celsius = (5.0/9.0) * (fahr-32.0);
        printf("%3.0f \t        %6.1f\n", fahr, celsius);
        fahr = fahr + step;
    }
}

最佳答案

我的 friend ,你混淆了两个不同的世界。

fahr 只是一个浮点变量。这意味着如果我们对其进行算术运算,例如赋值、加法、减法,它的值就可以改变。

另一方面,strcpy(字符串复制)将字符串从字符指针复制到另一个字符指针。它与您的 float 变量 fahr 无关。

关于除非执行 strcpy 命令,否则无法更改变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39186157/

相关文章:

c - 简单的 list 。主文件中的规范(方法、结构)不会在单独的文件(h 和 c)中编译。为什么?

c - 用C读取文件的问题

c - 将变量从c程序作为参数传递给shell脚本

c - 处理系统时间变化

c - SDL_init() 导致 c 文件不输出任何内容

c - 结构中的枚举,C中不完整元素的编译错误

c - 添加数组元素并存储在数组中

c - 配置文件时间与 clock() 时间无关

c - 减轻轮询环形缓冲区的影响

c - 编写一个访问数组的主程序