0X05 运算符、表达式和语句

如果有很强劲的逻辑能力,或者是构思已久的话,你可以写一个很复杂的表达式,但为了使代码方便阅读,最好一个表达式不要超过3个运算符。(这里的语句,并不包含代码块),使用自增或者自减看起会更专业一些,但是要知道++在前与在后的区别,根据位置就可以清楚知道,++在前就先自加一,++在后就是用过之后再加一。

表达式:表达式是由运算符和操作数组合构成。C语言的一个重要的属性是每一个C表达式都有一个值。

语句(statement)是构造程序的基本部分。程序(program)是一系列带有某种必需的标点的语句集合,一个语句就是一条完整的计算机指令。C语言要求每一个语句的结束处必须有分号,就是这个“;”

C把任何带有分号的表达式看做一个语句,你可以这样"a;",这样"4;",还可以这样";"。他们都是C所允许的。

丢掉分号是一个非常容易出现的错误,可能刚开始会不以为然,但却总能在不经意之间丢一些。

副作用(side effect)是对数据对象或文件的修改。比如在for循环中用到的i,使用i的目的是为了计数循环,但副作用是在结束循环后的i的值发生了改变,在下一次for循环中使用i的时候,就要重新初始化。

顺序点(sequence point)是程序执行中的一点,在该点处,所有的副作用都在进入下一步之前被计算。C语言中的每一个分号标志了一个顺序点。

复合语句:

使用花括号组织起来的两个或更多的语句。也称作代码块(code block //也是一种C,C++的IDE)

在没有花括号的情况下,if、for、while代码块的范围是从它们开始,到下一个分号。

类型转换:

基本规则如下

1,有符号和无符号的char和short类型出现在表达式里是时,都将自动转换成int,在需要的情况下,将自动转换为unsigned int

2,在包含两种数据类型的任何运算里,两个值都将被转换成两种类型里较高的级别

3,类型级别从高到低的顺序是:long double、double、float、unsigned long long、long long、unsigned long、long、unsigned int和int。

4,在赋值语句里,计算的最后结果被转换成就将要被赋值的那个变量的类型

5,作为函数的参数被传递是,char和short将被转换为int,float被转换成double

类型提升转换通常没有什么问题,但类型降级可能会导致问题

强制类型转换使用指派运算符,用法是(type),例如将int类型的a转换成long,(long)a;

原文链接: https://www.cnblogs.com/0907s/p/6092857.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    0X05 运算符、表达式和语句

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/244480

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 上午12:09
下一篇 2023年2月14日 上午12:09

相关推荐