C语言学习笔记【Chapter2】

时间:2022-01-24 10:33:11

【新知识累计】

2.1变量名

  • 变量和常量:都是程序处理的两种基本数据对象;
  • 声明语句:说明变量的名字和类型,制定变量的初值;
  • 运算符:指定要进行的操作;
  • 表达式:把变量和常量组合起来生成新的值;
  • 变量的命名:由字幕和和数字以及下划线组成,但是第一个字符必须是字母,_被当作是字幕来看待,且通常用在比较长的命名的变量名中,
    嗯,然后大小字母也是有区别的
    然后,变量名的起的也要比较合理,要使得程序易读

2.2数据类型以及长度

  • char 字符型, 占用一个字节,存放本地字符集中的一个字符
  • int 整型, 反反映了所用机器中整数的最自然长度
  • float 单精度浮点型
  • double 双精度浮点型
  • 上述是一些基本的数据类型,可以在其前面加限定符, 比如shortlong用于限定整型,short int sh以及long int counter,其中的int其实是可以省略的,因为short和long就是限定整型的 啊哈哈哈,这两个限定符的引入可以为我们提供满足实际需求的不同长度的整型数。
  • signedunsigned限定符可以用来修订char类型或者任何int类型,其中unsigned 的表示的就是没有负号,相反signed的就表示的是有负号的。

2.3常量

  • long类型的常量最后要以l后者L来结尾,比如1234567L,
  • 后缀表示的是常量的类型,一般没有后缀的浮点常量就是double类型的;
  • 进制相关:
    前缀 0 八进制
    前缀 0X或者0x 十六进制
  • 一个字符常量就是一个整数,看清楚了,他是个整数啊
  • 转义字符序列看起来像是两个字符,但是确是一个字符
  • 常量表达式:仅包含常量的表达式
  • 字符串常量也叫做字符串字面值,用双引号括起来,其中双引号并不是字符串的一部分
  • 字符串常量就是字符数组,且字符串的内部表示使用一个空字符 \n 来作为字符串的结束,所以,存储字符串的物理存储单元比实际我们看到的字符串的字符数目要多一个,没错,就是最后的那个 \n
  • 标准库函数strlen(s) 可以返回字符串参数的长度,不包括最后的那个
  • 搞清楚字符串"x"和字符'x'的区别, 二者是不同的,后者是一个整数,后者则是一个包含了\n的字符数组

2.4声明

  • 声明就是指定变量的类型,声明的同时可以对变量进行初始化

2.5算术运算符

2.6关系运算符和逻辑运算符

2.7类型转换

  • 类型转换的必须性的来源:当一个运算符的几个操作数是不同的类型时,需要将他们转换为同一种类型进行计算;
  • 类型转换的原则:比较窄的转换位比较宽的,保证信息的完整性,也就是不丢失信息

2.8自增运算符与自减运算符

  • 需要注意的就是++aa++的区别,前者是先加再用a,后者是先用a,用完再加

2.9按位运算符

  • 都是对进行操作,包括与或非、异或、左右移等,基本上就是这些吧

2.10赋值运算符以及表达式

  • 这里需要注意的就是符号的优先级吧

2.11条件表达式

  • if-else只执行其中的一个,还有一种另外的写法,可以使得程序显得更加紧凑,expr1 ? expr2 : expr3 比如就是这样的,这就是会问,满足第一个expr1的条件吗?满足的话执行expr2的操作,否则就是不满足,那么就需要去执行expr3的操作了。

2.12运算符优先级与求值次序

  • 运算符之类的东西,忽然觉得记住也是蛮好的,可以在实践中巩固,明天再看看啊哈哈哈哈

—————————————————————————华丽的分割线——————————————————————

1.今天算是基本上完成了一些东西吧,师妹说得对,需要不断的复习和巩固,尤其是像我这种忘得很快的人,很多时候我自己觉得我记住了,但是其实并没有,我早都忘记了。
2.今天也算是有好消息的吧,毕竟好像前段时间的工作没有白做,希望能在师兄的带领下走向胜利,诺克萨斯万岁!!!
3.今天听了一首歌《成全》,嗯林宥嘉的,蛮好听的,我也要唱。略略略~~~