㈠ 如何理解c语言常量和变量
对于基本数据类型量,按其取值是否可改变又分为常量和变量两种。在程序执行过程中,其值不发生改变的量称为常量,其值可变的量称为变量。它们可与数据类型结合起来分类。例如,可分为整型常量、整型变量、浮点常量、字符常量、字符变量、枚举变量、枚举变量。在程序中,直接常量是可以不经说明而直接引用的,而符号常量和变量则必须先定义后使用。
1、C语言常量和符号常量
在程序执行过程中,其值不发生改变的量称为常量。
1.1直接常量(字面常量):
整型常量:12、0、-3;
实型常量:4.6、-1.23;
字型常量:‘a’、‘b'。
1.2符号常量
标识符:用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
符号常量:用标识符代表一个常量。在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。
符号常量在使用之前必须先定义,其一般形式为:#define 标识符 常量其中#define也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。
习惯上符号常量的标识符用大写字母,变量标识符用小学字母,以示区别。
例3.1 符号常量的使用。
#define PRICE 30main() {
int num,total;
num=10;
total=num*PRICE;
printf('total=%d",total);
}
用标识符代表一个变量,称为符号常量。
符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值。
使用符号常量的好处是:含义清楚;能做到“一改全改”。
2、C语言变量
其值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元。变量定义必须放在变量使用之前。一般放在函数体的开头部分。要区分变量名和变量值是两个不同的概念。
㈡ C语言的变量名必须用小写,这个说法正确吗
不正确,如果必须用小写,那变量名就没必要区分大小写了。所以变量名称是可以用大写,也可以用小写。
㈢ c语言的合法常量的要求是什么
常量的概念:常量是指在程序运行过程中,其值不能被改变的量。
C语言中常量:直接常量和符号常量。
直接常量是指直接用具体数据表达的一种形式,直接常量又分为整型常量、实型常量、字符常量和字符串常量;
符号常量则是指用C语言标识符定义的常量。
整型常量就是整常数,10进制数、8进制数和16进制数三种。如:10、012、0x0A
实型常量也叫做浮点型常量。
字符型常量必须用单引号括起来。如:'M' , ' '
字符串常量应用双引号括起来。
符号常量可以用宏定义表示也可以用const关键字表征。
(3)c语言变量常量大小写扩展阅读:
常量有整型常量、浮点型常量、字符型常量及字符串常量。 ‘
常量定义是指定义符号常量,用一个标识符来代表一个常量,通过宏定义预处理指令来实现。
格式:#define标识符常量
由用户命名的标识符是符号常量名。作为符号常量名,一般大写。一旦定义,在程序中凡是出现常量的地方均可用符号常量名来代替。
对使用了符号常量的程序在编译前会以实际常量替代符号常量。
参考资料:网络-常量
㈣ c语言中如何辨别大小写字母
C语言里面大小写有区分。区别为:用途不同、编译不同、写法不同。
一、不同的用途
1.大写:大写在C语言符号的正常值名称中使用。
2.小写:小写在C语言中用于控制语句和关键字。
二、不同的编译
1.大写:大写符号常量名称不与硬件相关联,并且程度不需要与编译系统支持的各种库相配合。
2.小写:小写控制语句和关键字与硬件相关,需要与编译系统支持的各种库配合使用。
三、写法的不同
1.大写:第一个字符必须是大写字母或知道下划线,否则就不是合法的跟踪变量名。
2.小写:小写控制语句和关键字只能是小写字母或数字,不能加下划线。
(4)c语言变量常量大小写扩展阅读:
C语言%*的使用
1.如果在scanf中使用,添加*的部分将被忽略(跳过),参数将无法获得。
如:
Inta、b;
字符b[10];
扫描文件(“% d % * s”,& a, b);
输入:
12“ABC”
所以12将被读入变量a,但是在读入之后ABC将被丢弃,没有任何变量(像这里的字符数组b)
使用*和扫描集,您只能从输入中选择需要的内容,而忽略其他内容。
此外,它通常用于清空缓冲区。
2.在printf中,*表示将*的位置替换为下面的形式参数,以实现动态格式的输出。
如:
Printf("%s",10,s);/*表示输出字符串s,但它至少占据10个位置。字符串s左边的空间不足,相当于printf(“%10s”,s);*/
Printf("%。*s\n",int,STR);
//%。*的地方。*表示字符串输出类型的显示精度为宽度
//由*表示的值由以下参数列表中的整数(int)值给出
如:
Printf("%。*s\n",1,"ABC");//输出a
Printf("%。*s\n",2,"ABC");//输出ab
Printf (" %。* s n ", 3, "ABC");//输出ABC >3是相同的效果,因为当遇到'