围绕二级大纲的干货

一切为了二级(敲黑板)!!!!!!

1.保留字(关键字)

   有一些特殊的标识符,是不能用在用户自己的对象上的,他们被称作保留字。编译器需要使用这些保留字来分析程序的语法结构,进而理解程序。你可以把他们理解成英文里做助动词的have do和助词that when why的作用。程序中的 main int include return都是保留字。都有对应的特殊含义。以下全部为保留字: 

   asm auto bool break case catch char class const const_cast continue default delete do double dynamic_cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new operator private protected public register reinterpret_cast return short signed sizeof static static_cast struct switch template this throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while and、and_eq、bitand、bitor、compl、not、not_eq、or、or_eq、xor xor_eq

2.标识符

   必须为字母,数字,下划线组成,且开头必须是下划线或字母,且不可含保留字(关键字),

3.常量(变量)

    数据存储的空间中的数据可以被修改,这个空间称为变量,如果空间中的数据不能被修改,这个空间称为常量。

4.数据类型(基本类型,派生类型,空类型)(大纲上要求基本类型和指针类型)

 (1)基本类型:int short long float double...

             整型,字符型,浮点型,布尔型

 (2)指针类型:指针变量:*p

5.常量

(1)整型常量:

整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x或0X表示十六进制,0表示八进制,不带前缀则默认表示十进制。

整数常量也可以带一个后缀,后缀是U 和L的组合,U表示无符号整数(unsigned),L表示长整数(long)。后缀可以是大写,也可以是小写,U和L的顺序任意。

(2)字符常量

字符常量是括在单引号中。如果常量以 L(仅当大写时)开头,则表示它是一个宽字符常量(例如L'x'),此时它必须存储在wchar_t 类型(双字节类型)的变量中。否则,它就是一个窄字符常量(例如 'x'),此时它可以存储在 char类型的简单变量中。
字符常量可以是一个普通的字符(例如 'x')、一个转义序列(例如'\t'),或一个通用的字符(例如 '\u02C0')。
当字符前面有反斜杠时,它们就具有特殊的含义,被用来表示如换行符(\n)或制表符(\t)等。

(3)逻辑常量:true和false。

(4)实型常量:

     (1)十进制小数形式:小数点前后可以没有数字,但不可同时没有数字。

     (2)指数形式:指数部分是在e或E后跟整数阶码(可带符号)。

(5)地址常量

地址常量就是地址不能被修改,就像一维数组中的数组名,是一个指针常量,不可被运算和不可被改变。

(6)符号常量

可以用一个运算符来表示一个常量,这个运算符称之为符号常量。其特点是编译后写在代码区,不可寻址,不可更改,属于指令的一部分。

#define PI=3.14

6.变量

   根据定义位置不同,将变量分为:局部变量(内部定义),全局变量(外部定义)。变量存储类型:外部extern),静态(static),寄存器(register),自动(auto)

   5种存储形式:局部变量,全局变量,外部变量,静态变量,寄存器变量

 (1)局部变量:生存期仅存在于被定义的函数或块中。在定义自己的函数或块外是不可见的。

 (2)全局变量:在任何函数之外说明(包括main函数),在整个程序运行期间保持有效,全局变量在程序开始说明。(当全局变量与函数中的局部变量重名时,访问局部变量

 (3)外部变量:由extern说明的全局变量。在该文件内是全局变量,在其他文件再次用extern描述,表示变量的类型和名字已在别处说明。

 (4)静态变量:稳定且具有固定内存地址的变量(用static修饰的变量)。始终存在,占有固定单元,即使退出该模块,仍然有效。多次调用该模块,可保持此变量的连续性。

      (请注意:静态全局变量仅在它被定义的源文件内有效。(而全局变量可通过extern作用域多个源文件))

 (5)寄存器变量:存在一种仅用于intchar类型变量的存储分类符register。并定义:用其(register)修饰的局部变量称为寄存器变量。

         使用分类符,预算速度大大快于普通变量的运算,这类变量常用于循环。但分类符仅可用于局部变量函数的形参(因为这些变量都是缺省的自动变量,全局的register变量是不允许的)。同时,不可运用地址操作符(&)对register变量进行地址操作

————所借鉴文件(PPT(C++程序设计变量)

7.运算符

  种类与优先级,结合性:点击打开干货链接

8.分支语句

  三大分支结构:顺序,选择,循环敲打长咳一口老血

9.数组

 多维数组最后一个下标一定要有值存在(即a[][][100]正确)

10.函数

  (1)参数值传递

         1、实参和形参之间的额数据传递是单向的“值传递”,单向传递,只能由实参传给形参,反之不能。

         2、被调用函数的形参只有函数被调用时才会临时分配存储单元,一旦调用结束占用的内存便会被释放。

         3、不论是“按值传递”还是“按地址(指针)传递”,传递的都是实参的一个拷贝。

  (2)按值传递

        其实是将实参的值拷贝给形参,使用的并不是实参本身

  (3)按地址传递

        将实参的地址传递给形参,可以通过地址对形参值进行改变。(没有拷贝参数值,而是通过拷贝到的地址而可以对其值进行修改)

  (4)缺省参数值

        定义函数时,将每一个参数赋予初始值{ass(100,200,300) },当实参个数小于形参个数(即有形参位置无实参进行赋予),该位置即使用初始值。{ass(x,200,y) }

11.重载函数

    重载函数是函数的一种特殊情况,即在同一范围中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同,也就是说用同一个运算符完成不同的运算功能。这就是重载函数。重载函数常用来实现功能类似而所处理的数据类型不同的问题。但是重载函数的返回值类型可以不同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值