C的变量与常量
变量
使用printf()来打印变量的值。
要打印a中的值10:printf(“%d\n”,a);
%d代表十进制输出一个整数。
变量值简单交换
1 |
|
常量
在程序执行过程中,其值不被改变的量
直接常量:直接引用的数字等;
符号常量:使用标识符来代替一个数字(常见的:宏定义常量 和 常变量)
宏定义:又称为宏代换,是定义一个标识符来代表一个值或一个表达式
1 |
宏定义也可定义表达式:1
2
注意:如果要使用宏定义来代替表达式,需要在每个表达式的变量都加上括号以防止出现计算错误1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main()
{
int a=2;
int b=3;
printf("%d\n",FUN1(a+b,b+a));
printf("%d\n",FUN2(a+b,b+a));
return 0;
}
执行程序,输出:
13
25
答案:
FUN1的宏替换会变成:a+b*b+a
FUN2的宏替换会变成:(a+b)*(b+a)
因此两个宏替换会得到不同的结果。
常变量
变量值不可改变的量,使用const修饰
注意:const修饰后的变量会变成只读,因此无法再次赋值。因此初始化常变量需要在定义时直接赋值。
常变量与宏定义常量的区别:宏定义常量是在预处理阶段,使用宏名来代替宏值。而常变量是在程序运行时,程序在内存分配的一个变量,只不过变量不允许再次赋值。
常量与后缀:
有时候我们需要显式地表示出常量的类型,这时候我们可以在常量后加后缀
u或U:unsigned类型,如123u
l或L:long类型,如123l
ll或LL:long long类型,如123456ll
f或F:float类型,如0.123f
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 yuanshaoqiancom@gmail.com
文章标题:C的变量与常量
本文作者:Mr.Yuan
发布时间:2019-02-23, 21:04:16
最后更新:2019-12-05, 17:56:13
原始链接:https://yuanshaoqian.github.io/2019/02/23/C的变量与常量/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。