C++学习:第二章C语言基础 - (二)变量、常量

版权声明:共享知识,欢迎转载 https://blog.csdn.net/kakiebu/article/details/82769867

1. define 与 const

两个区别在于直接替换与处理后在替换

rm *.c 批量删除

#include<stdio.h>

#define AA PI
#define BB NUM + 8

int main(){

         //测试sizeof 以及汇编语言
         //结果显示sizeof函数只看变量类型,不赋值
         //gcc -S *.c 进入汇编

         int n = 10;
         printf("%i\n", sizeof(int));
         printf("%i\n", sizeof(n));
         printf("%i\n", sizeof(n+5));
         printf("%i\n", sizeof(n+5.5));
         printf("%i\n", sizeof(n=123));
         printf("n=%i\n", n);       

         //对比#define 与 const
         //#define 是完全直接替换,const是“计算”后替换
         //查看预处理效果 gcc -E *.c
        //可以写 gcc -E *.c > view 重定向为 view文件

         const double PI  = 3.14;
         const int    NUM = 2;
         const double aa = PI;
         const double bb = NUM + 8;
         printf("#define  %g\n", AA * BB);
         printf("const  %g\n", aa * bb);

         return 0;
}

猜你喜欢

转载自blog.csdn.net/kakiebu/article/details/82769867