C程序设计语言读书笔记:类型运算符与表达式

1、变量和常量是程序处理的两种基本数据对象。声明语句说明变量的名字及类型,还可以指定变量的初值。所有整型都包含signed(带符号)和unsigned(无符号)两种形式,且可以表示无符号常量与十六进制字符常量,浮点运算可以以单精度进行,还可以使用更高精度的long double类型运算。对象可以声明为const 表明其值不能修改。
2、下划线被看做是字母,命名较长的变量,提高其可读性,库例的名字通常以下划线开头,所以变量名尽量不要以下划线开头。大小写有区别,一般变量用小写,符号常量用大写。选择的变量名尽量从字面上表达变量用途,局部变量一般用较短的变量名。
3、char 字符型,占用了一个字节,可以存放本地 字符集 中的一个字符。int 整型,通常反映了所用机器中整数的最自然长度 float 单精度浮点型 double 双精度浮点型
4、类型限定符signed与unsigned可用于限定char类型或任何整型。unsigned类型的数总是正值或0,并遵守算数模2^n定律(占得字节次方表示长度)unsigned char类型变量取值范围0-255,而signed char 取值范围为-128~127
5、类似1234的整数常量属于int类型,long类型的常量以字母1或L结尾,如123456789L。当整数太大无法使用int类型表示时,将被当做long类型处理,无符号常量以字母u或者U结尾。后缀,后缀ul表示是unsigned long类型。
6、浮点数常量中包含一个小数点(如123.4)或一个指数(1e-2),也可以两者都有。没有后缀的浮点数常量为double类型。后缀
7、常量表达式是仅仅只包含常量的表达式。表达式在编译时求值,不在运行时求值,所以可以出现在任何位置。他就是一个常量,不过写的让你能看懂。
8、字符串常量就是字符数组。字符串内部表示使用一个空字符‘\0’作为串的结尾,所以存储字符串的物理存储单元数比双引号中的字符多一个。C语言对字符串的长度没有限制,但是程序必须扫描完整个字符串才能确定字符串的长度。标准库函数strlen(s)可以返回字符串参数s的长度,但长度不包括末尾的‘\0’。
9、‘x’和“x”是不同的,前者是一个整数,其值是字母x在机器字符集中对应的数值;后者是一个包含一个字母x以及‘\0’的字符集。
10、枚举常量,是一个常量整型值的表,例如
enum boolean(NO,YES);在没有显式说明的情况下,enum类型中第一个枚举名的值为0,第二个为1.以此类推,如果指定了部分枚举名的值,那么未指定的枚举名的值将依着最后一个指定值向后递增。
11、不同枚举中的名字必须互不相同。统一枚举中不同的名字可以具有相同的值。
12、枚举为建立常量值与名字之间的关联提供了一种便利的方式,相对于#define语句来说,它的优势在于常量值可以自动生成。
13、变量的初始化必须为常量表达式,每次进入函数或程序块时,显式初始化的自动变量都将被初始化一次,初始化表达式可以是任何表达式。默认为0
14、任何变量声明都可以被const限定符限定。const限定的数组所有元素都不能被修改。
15、算数运算法加减乘除取模,整数除法会截断结果中小数部分表达式。
16、取模运算符%不能应用于float和double类型,有副操作数的情况下,整数除法截取的方向以及取模运算结果的符号取决于机器具体实现。
17、== != 优先级小于 大于等于小于等于大于小于优先级小于加减优先级小于乘除取模
18、&&||懒惰运算符,从左到右处理,知道结果后立刻停止运算。&&的优先级比||高,但是都比关系运算符和相等性运算符优先级低。
19、!用于将非零操作数转为0,将0操作数转为1.
20、 类型转换,思路就是把比较窄的自动转换为比较宽的操作数,并且不丢失信息的转换f+i把整型加到浮点型上,将整型变量i的值自动转换为浮点型。
21、任何表达式中都可以使用强制类型转换(类型名)表达式,先把一个变量强制转换为需要的变量再去调用函数,比如sqrt((double)n)
22、按位操作符,这些运算只能作用于整型操作数,只能作用于带符号或无符号的char、short、int、long类型,按位与& 按位或| 按位异或^ 左移<< 右移>> 按位求反~
23、&的性质让它可以对二进制数进行置0操作,用0和这个数&,|可以用来置1操作,他们是位运算符
24、移位操作符会出现补0的情况按位异或操作符……两个操作数不相同置1相同置0.
25、运算符优先级与求值次序表记得。圆括号是优先级最高的,多用圆括号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值