《小猫猫大课堂》4——数组,操作符,常见关键字

更新不易,麻烦多多点赞,欢迎你的提问,感谢你的转发,

最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要。

目录

前言

 数组

定义

 数组的下标

数组的使用 

操作符 

算数操作符

位移操作符

位操作符

赋值操作符

单目操作符

关系操作符

逻辑操作符

条件操作符

逗号表达式

下标引用、函数调用和结构成员

常见关键字

关键字typedef

关键字static

修饰局部变量

修饰全局变量

修饰函数

#define定义常量和宏

总结


前言

我们这一次说数组,操作符,常见关键字,还有#define定义常量和宏。

喵喵喵,我们开始吧!


 数组

  • 定义

int arr[10] = {1,2,3,4,5,6,7,8,9,10};//定义一个整形数组,最多放10个元素,

其中“数据类型+arr[元素个数]={各个元素展示};”就是数组的定义形势

  •  数组的下标

C语言规定:数组的每个元素都有一个下标,下标是从0开始的

数组可以通过下标来访问的

  • 数组的使用 


操作符 

我们先了解简单实用的,小朋友。

算数操作符

+    -    *    /    %


位移操作符

>>     <<


位操作符

&   ^   |


赋值操作符

=    +=    -=    *=    /=    &=    ^=     |=       >>=      <<=


单目操作符

!             逻辑反操作

-             负值

+            正值

&            取地址

sizeof     操作数的类型长度(以字节为单位)

~             对一个数的二进制按位取反

--            前置、  后置        --

++          前置、后置        ++

*             间接访问操作符(解引用操作符)  例如*p——解应用指针

(类型)     强制类型转换


关系操作符

>=

<

<=

!=       用于测试“不相等”

==      用于测试“相等”


逻辑操作符

&&   逻辑与

||      逻辑或


条件操作符

exp1 ? exp2 : exp3


逗号表达式

exp1  , exp2 ,  exp3,.....expN


下标引用、函数调用和结构成员

[ ]    ( )   .    ->

-> 是一个整体,它是用于指向结构体、C++中的class等含有子数据的指针用来取子数据。换种说法,如果我们在C语言中定义了一个结构体,然后申明一个指针指向这个结构体,那么我们要用指针取出结构体中的数据,就要用到“->”.


常见关键字

C语言提供了丰富的关键字,这些关键字都是语言本身预先设定好的用户自己是不能创造关键字的。 

我们先介绍几个既陌生又能用到的操作符

关键字typedef

typedef 顾名思义是类型定义,这里应该理解为类型重命名。

关键字static

在C语言中: static是用来修饰变量和函数的

1. 修饰局部变量-称为静态局部变量

2. 修饰全局变量-称为静态全局变量

3. 修饰函数-称为静态函数

修饰局部变量

对比代码1和代码2的效果理解static修饰局部变量的意义。

结论: static修饰局部变量改变了变量的生命周期

让静态局部变量出了作用域依然存在,到程序结束,生命周期才结束

 宝子注意看区,static在近乎相同的代码中起到的不同作用,static将i的作用范围享之乱只作用于test()中,所以主函数的i没有起到作用,没有重新定义i的值,i可以不断加加。这是static画地为牢在子函数中修饰局部变量,是不是很有用呢?简直是黑科技。

修饰全局变量

dev版

vs2019版

代码1正常,代码2在编译的时候会出现连接性错误。

结论: 一个全局变量被static修饰,使得这个全局变量只能在本源文件内使用,不能在其他源文件内使 用。 

额,小喵试了一下,感觉没有变化,可能是代码太小,或是现在的编译器越来越成熟了,可以避免一些错误的发生,但宝子请不要大意,咱最好不要这么干

修饰函数

但是代码2会报错

 代码1正常,代码2在编译的时候会出现连接性错误.

结论: 一个函数被static修饰,使得这个函数只能在本源文件内使用,不能在其他源文件内使用。

所以说static有好处也有坏处,不要随意使用小喵觉得最好用的还是修饰局部变量吧,小朋友快快实践起来吧!

剩余关键字后续课程中陆续会讲解,时间很长,我们慢慢话!


#define定义常量和宏

 编译一个C语言程序的第一步骤就是预处理阶段,这一阶段就是发挥作用的阶段。C预处理器在源代码编译之前对其进行一些文本性质的操作,主要任务包括删除注释、插入被#include进来的文件内容、定义和替换由#define 定义的符号以及确定代码部分内容是否根据条件编译(#if )来进行编译。”文本性质”的操作,就是指一段文本替换成另外一段文本,而不考虑其中任何的语义内容。宏仅仅是在C预处理阶段的一种文本替换工具,编译完之后对二进制代码不可见

以后小喵会细说,这个东西有点多。


总结

今天我们先告一段落,下一次我们说指针和结构体,说完那一节,我们的第一轮就结束了,立马开始第二轮,会对部分重要的只是进行仔细讲解,比如说语句,函数,指针,结构体,哦,还有最重要的灵魂——调试,可以提前预习一下,真是期待啊!!!三轮应该会同步开始更新(喵会特殊标明的),没错,小喵不要命了,只要肝不死,就往死里肝,哈哈哈哈,脑子要坏掉了。

真心的希望,宝子,学习完三轮,并配上相关练习,宝子可以学到满意!

未来的自己会感谢现在的你。


更新不易,麻烦多多点赞,欢迎你的提问,感谢你的转发,

最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要。啊呜!!!

猜你喜欢

转载自blog.csdn.net/ormstq/article/details/128520177