c和指针(pointers on C)第四 ,五章 学习记录
程序员文章站
2022-03-11 18:25:43
...
1.布尔类型
C不具备布尔类型,而是用整型来替代,一般情况下,0表示假,非0表示真
2.位操作符
第五章中介绍了很多关于位操作符的内容,位操作与编汇相关,现在先跳过需要的时候再来看。
3.条件操作符
条件操作符接受三个操作数
expression1 ? expression2: expression
先计算expression1,若为真,则整个表达式的值为expression2,反之为expression3
eg:a>5 ? b-6 : c/2
若a大于5 则执行b-6,反之执行c/2
利用条件操作符,可极大简化简单的条件语句
4.逗号操作符
expression1,expression2,expression3,…
逗号操作符将两个或多个表达式分隔开,这些表达式自左向右逐个求值,整个逗号表达式的值就是最后那个表达式的值。
eg:
if(b+1,c/2,d>0)
如果d的值大于0,整个表达式为真
虽然上例看起来逗号表达式没有什么意义,再看一个例子
while(a=get_value(),count_value(),a>0)
这样就相当于循环获得下个a的值的过程被简化,利于维护
5.左值和右值
L-value 和R-value简单的来说
左值需要特定的位置,且只能将右值赋值给左值
eg:
a=b+25; 正确
b+25=a; 错误
因为b+25并没有一个特定的地址去储存这个值,它只是一个表达式
同理 *pointer=20;
左值虽然也是一个表达式,但它有固定的地址存在,因此是正确的赋值。
推荐阅读
-
[C#学习笔记]类型对象指针和同步块索引
-
c 指针学习记录
-
C语言基础学习之指针,数组和内存杂讲
-
SAP标准培训课程C4C10学习笔记(四)第四单元:产品和价格主数据 CRMC4CSAPCloud for Customer培训
-
ROS学习过程中的错误记录2 - 编写简单的消息发布器和订阅器(C++)
-
【学习笔记】C++ GUI Qt4 第四章 4.1 *窗口部件和4.2子类化QTableWidget
-
【学习笔记】C++ GUI Qt4 第四章 4.5 实现其他菜单 和 4.6 子类化QTableWidgetItem
-
C语言基础学习之指针,数组和内存杂讲
-
[C#学习笔记]类型对象指针和同步块索引
-
【C++学习记录】函数、链接器与函数的声明和定义、函数默认参数、函数重载、内联函数