拾遗|学习笔记

简介: 快速学习拾遗

开发者学堂课程【你的第一门 C 语言课遗拾】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/444/detail/5466


遗拾


内容介绍:

一、运算符

二、注释


一、运算符

1) 赋值运算符:

他是 c 语言中用的最多的运算符,他的语法很简单,就是一个=

要求:

图片56.png

赋值运算符的左边必须是一个 lvalue,变量名就是 lvalue。简而言之,变量名必须在左边。

案例:

int a;

a = 5;

如果把值放在左边就会报错

案例:

int a;

5 = a;

错误信息:

error: lvalue required as left operand of assignment

2) 复合的赋值运算符:

由于 c 语言使用程度很高,又推出了符合的赋值运算符

图片57.png

a = a+1;  等于 a+=1;

a =a-1 a-=1

a=a*3a *=3

a=a/4a/=4

a=a%5 a%=5

3) 自增自减运算符:

i=i+1等于i++++I, i=i-1等于i--—i

图片58.png

案例:

#include

int main()

{

int i = 5,j;

j = ++i;

//分别打印值

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

//i重新进行初始化

i =5;

j=i++;

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

return 0;

}

运输结果:i=6,j=6

i=6,j=5

可以看出i++就是先使用i里面的值

++i是先赋值在进行使用

4) 逗号运算符:

i=1;

a=2;

s=3;

可以写成:i=1,a=2,s=3;

图片60.png

语法:

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

串联起来用逗号隔开

-逗号表达式的运算过程为从左往右逐个计算表达式

-逗号表达式作为一个整体,它的值为最后一个表达

式(也即表达式n)的值

图片61.png

案例:

a= (b = 3,c=b+4)+5)

先将变量 b 赋值为3

然后变量 C 赋值为 b +4的和,也就是7

接下来把 C 的值加上5

最后赋值给变量 a,得到变量 a的值是12

注意:

在 c 语言中看到逗号不一定是逗号运算符

 5) 条件运算符:

一个值为单目运算符,两个值为双目运算符,三个为条件运算符

语法:exp1 ?exp2 : exp3;

exp1是条件表达式

图片62.png

如果结果为真,返回exp2

如果结果为假,返回exp3

if (a>b)

max=a;

else

max = b;

可变如下:

max = a>b ? a:b

更加的节省空间

 6) goto语句:

语法:goto标签;直接跳转到指定的标签位置,其中标签要定位到语句的前面

案例:

#include <stdio.h>

int main()

{

while (i++){

//如果i>10

if(i>10

{

//goto标签

goto  A;

}

}

//标签

A: printf ("Here,i= %d\n", i);

return 0;

}

在开发中尽量避免使用 goto 语句,会破坏代码原有的逻辑


二、注释:

//有时候代码注释比代码本身更加重要

//这是注释,编译器不会理会

/*这是一个跨越多行的注释这是注释,编译器不会理会这是注释,编译器不会理会这是注释,编译器不会理会这是一个跨越多行的注释*/

错误注释示范:

int result, i;

result = e; // result初始化为8,

i=0;//i初始化为0

while (i <= 100)”//一个执行100次的循环

{

resulti;//每次将变量主的值累加到变量 result 中

i++; //变量i的值加1

}

代码注释不用写的这么详细,做到见名知意即可

相关文章
|
1月前
|
自然语言处理 索引 Python
PyCodeObject 拾遗
PyCodeObject 拾遗
50 10
|
6月前
|
缓存 Linux Shell
内存系列学习(八):终章-结束又是开始
内存系列学习(八):终章-结束又是开始
65 0
|
6月前
|
前端开发 程序员
前端知识笔记(四十四)———为什么要学代码
前端知识笔记(四十四)———为什么要学代码
61 0
|
12月前
|
安全 调度 C语言
《C++避坑神器·十九》C++多线程使用,啥也不懂看它就对了
《C++避坑神器·十九》C++多线程使用,啥也不懂看它就对了
133 0
|
12月前
|
C++
《C++避坑神器·二十》C++智能指针简单使用
《C++避坑神器·二十》C++智能指针简单使用
46 0
|
存储 算法 iOS开发
ZPhotoBrowser (基于之前的那篇文章PhotoKit初用)
作为一个iOS开发人员,我已经不知不觉的在帝都这个地方上干了块两年了。前一阵,由于公司的发展方向的问题,我被迫加入了找工作的大军之中。这可把我担心坏了,因为我之前的一个同事找了好久都没有找到工作,之后他就选择回老家发展了。做过iOS这行的都知道现在是什么行情了,我就不多说了。不过还好我找了一周左右吧,面试不少。但是现在招人的公司,真的不知道要招什么样的开发人员,面试草草了事的偏多。还有就是自认为大牛的比较多,我记得我面了一家智能家居的科技公司。那个面试我的面试官,看了我做过的产品。就给我说了一句:“你就是个调接口和写TableView的啊。”这话听起来真的让人难受,用一句很流行的话说,那就是“
|
设计模式 Java 编译器
【Java编程思想读后整理(干货版)】第十章 接口
【Java编程思想读后整理(干货版)】第十章 接口
|
设计模式 Scala 开发者
温故知新 | 学习笔记
快速学习温故知新
|
Java 关系型数据库 Scala
温故知新|学习笔记
快速学习温故知新。
|
算法 Scala 开发者
作业说明和温故知新 | 学习笔记
快速学习作业说明和温故知新
下一篇
无影云桌面