C语言的语法基础

2.3.6类型转换

 

强制类型转换运算符将一个表达式的值转换成所需的数据类型,其使用格式为:

(类型名)(表达式)

例如(double)1/2 的值为0.5, 因为(double)1将整型数1转换成1.0(双精度类型),1.0/2为实数除,值为0.5。

 

2.3.7逗号运算

C语言中,可以用逗号运算符“,”把两个或多个C的合法表达式连接起来构成逗号表达式。逗号运算符的优先级是C语言中最低的。逗号表达式的一般形式为:

表达式1,表达式2,...,表达式n

逗号表达式结合方向是从左至右,先计算表达式1,然后计算表达式2,...,最后计算表达式n,逗号表达式的值为最右边表达式(即表达式n)的值。

[例2.8]

main()

{ int i, j, k;

i=1;

k=(j=++i, i +=j, i+=5);

printf("%d,%d,%d\n", i, j, k);

}

运行结果:

9,2,9

执行上面程序的第二条语句后,变量i的初值为1。

执行第三条语句时先计算表达式j=++i, i的值变为2,j的值变为2;然后先计算表达式i+=j,相当于i=i+j, i的值变为4;最后计算表达式i+=5,相当于i=i+5, i的值变为9,并把表达式i+=5的值9作为整个逗号表达式的值赋值给变量k。最后i,j,k的值分别为9,2,9。

2.3.8长度运算符

长度运算符“sizeof()”是单目运算符, 用于计算变量或类型所占内存字节数的大小。sizeof()运算符的有两种用法:

sizeof(数据类型) 计算该数据类型在内存中所占的字节数

sizeof(变量名)  计算该变量在内存中所占的字节数

如sizeof(int) 的值为2,sizeof(long)值为4。可以计算变量在内存中所占的字节数,若有语句double d; 则sizeof(d)的值为8。

 

2.4 小结

本章主要内容如下

1.标识符:关键字、预定义标识符、用户标识符。

2.基本数据类型:整型、字符型、实型。

3.常量:整型常量、实型常量、字符常量、字符串常量、符号常量。

4.变量:变量的定义、变量的初始化、变量的值在内存的表示。

5.格式输入scanf、格式输出函数printf:格式说明与使用方法。

6.非格式化输入、输出函数:putchar、getchar、getch、getche。

7.运算符:运算符的优先级与结合方向。

8.表达式及求值过程:表达式的值及其类型;算术运算;增1减1运算;关系、逻辑、条件运算;位运算;赋值运算;逗号运算;长度运算;各类数值型数据的混合运算;类型转换。

Tags:

发表评论