C语言运算中的临时匿名变量

一:C语言和汇编的区别(汇编对应机器操作,C语言对应逻辑操作)

        (1)C语言叫高级语言,汇编语言叫低级语言

        (2)低级语言的意思是汇编语言和机器操作相对应,汇编语言只是机器码的助记符,用汇编语言必须有机器的思维。因为不同的cpu设计时指令差异很大,因此用汇编编程的差异很大

        (3)高级语言(C语言)它对低级语言进行了封装(C语言的编译器来完成),给程序员提供了一个靠近人类思维的一些语法特征,人类不用过于考虑机器原理,而可以按照自己的逻辑原理来编程。譬如数组、结构体、指针 ......

        (4)有更高级的语言如JAVA、C#等只是进一步强化了C语言提供的人性化操作界面语法,在易用性上安全性上进行了提升

二:C语言的一些“小动作”

        (1)高级语言中有一些元素是机器中没有的

        (2)高级语言在运算中允许大跨度的运算。意思就是低级语言中需要好几步才能完成的一个运算,在高级语言中只需要一步即可完成。譬如在C语言中一个变量i要进行加1,在C语言中只需要一句i++即可,看起来只有一句代码,但实际翻译到汇编阶段需要3步才能完成:第一步从内存中读取i到寄存器,第二步对寄存器中的i进行加1,第三步把计算的到的结果写回到内存中的i

三:使用临时变量来理解强制类型转换

        

#include <stdio.h>


int main(void)
{

    float a = 12.34;
    int b = (int)a;

    printf("a = %f\nb = %d\n",a,b);        //输出结果a = 12.340000 b = 12
    //(int)a在强制类型转换并赋值时其实进行了四个步骤:第一步先在另外的地方找一个内存构建了一个临时            
    //变量x(x的类型是int,x的值等于a的整数部分),第二步将float a 的值的整数部分赋值给x,第三步将 
    //x的值赋值给b,第四步将临时变量x销毁
    //最后的结果:变量a的值不变,b的值是a的整数部分



    return 0;

}

四:使用临时变量来理解不同数据类型之间的运算

        

#include <stdio.h>

int main(void)
{

    int b;
    float a,f;
    
    b = 10;
    f = 1.5;
    a = b / f;
    
    printf("a = %f\n",a);        //输出结果a = 6.666667

    



}

        

#include <stdio.h>

int main(void)
{

    int b;
    float a;
    
    b = 10;
    a = b / 3;        //第一步先计算 b / 3 ,第二步将计算后的值强制转换为float类型的临时变量
    //第三步将临时变量的值赋值给a,最后销毁临时变量
    
    printf("a = %f\n",a);        //输出结果为3.000000

    



}

        

相关推荐

  1. C语言运算临时匿名变量

    2024-06-15 20:02:02       8 阅读
  2. C++-三目运算符注意点与临时变量

    2024-06-15 20:02:02       16 阅读
  3. C# 匿名方法

    2024-06-15 20:02:02       13 阅读
  4. c# 循环内使用匿名函数关联变量问题

    2024-06-15 20:02:02       19 阅读
  5. C语言逻辑运算

    2024-06-15 20:02:02       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-15 20:02:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-15 20:02:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-15 20:02:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-15 20:02:02       20 阅读

热门阅读

  1. 低压高频处理器

    2024-06-15 20:02:02       7 阅读
  2. 【数学】如何求解矩阵的特征值和特征向量

    2024-06-15 20:02:02       8 阅读
  3. Linux内核中的锁

    2024-06-15 20:02:02       7 阅读
  4. DDPM公式推导(二)

    2024-06-15 20:02:02       6 阅读
  5. 力扣第204题“计数质数”

    2024-06-15 20:02:02       7 阅读
  6. (一)PHP 变量

    2024-06-15 20:02:02       8 阅读
  7. docker

    docker

    2024-06-15 20:02:02      8 阅读