菜鸟教程笔记整理2(自用、慎入)

C++ 修饰符类型

类型修饰符

可组合使用,如:unsigned long int

类型限定符

const  增加常属性

static  增加变量的生命周期,使其只有在整个程序结束时才被销毁


C++ 循环  

程序按顺序执行语句,当某部分语句需要重复执行,此时可采用循环语句。

循环类型

while循环

相对for循环,while循环能够处理  循环次数未知但知道终点条件  的情况,如 输入未知长度的字符串、给出多组输入执行同一程序  等情况。

while循环执行顺序:

条件为真--执行--再次判断条件;

条件为假--执行下一条语句;整个while循环为一条语句(语句块不以分号结尾)

注意:while循环中的++i与i++导致的循环次数不同

for循环

for (表达式1;表达式2;表达式3) {
    // 循环体语句
}

for 语句中的三个表达式可部分或全部省略,但两个分号不能省略。

常见的是:将表达式1放在了 for 语句之前,或表达式3放在了循环体中,在 for 语句中就可相应地省略表达式1或表达式3。

for循环用于迭代

do.......while循环

循环控制语句

break:嵌套循环时,break只会终止最内层的循环,也就是离它最近的循环

continue

无限循环


c++判断

注意:

  • 一个 if 后可跟零个或一个 else,else 必须在所有 else if 之后。
  • 一个 if 后可跟零个或多个 else if,else if 必须在 else 之前。
  • 一旦某个 else if 匹配成功,其他的 else if 或 else 将不会被测试。

c++指针

什么是内存地址以及如何访问它?

每一个变量都有一个内存地址,内存地址是一串十六进制数。

访问变量的内存地址需要用到连字号  &  ,意为取地址。

指针是一个变量,其值为另一个变量的地址。

所有指针的值的实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的长的十六进制数。不同数据类型的指针之间唯一的不同是,指针所指向的变量或常量的数据类型不同。

int  var = 20;
int* ip;        //指针声明。星号是用来指定一个变量是指针。
ip = &var;       // 指针初始化。意为在指针变量中存储 var 的地址。
/*
int* ip=&var;   //或者声明时就初始化
*/
cout<<*ip;     // * 指解引用,得到指向的值;

C++ Null 指针

赋NULL

如何检查空指针

未初始化的指针和空指针都要避免误用

指针的算术运算

可以对指针进行四种算术运算:++、--、+、-。

指针算术运算会根据指针的类型和大小来决定移动的距离,即指针值的改变。

指针与指针之间可以进行赋值、比较操作。并且  关系比较(如 <><=>=只有在同一数组的元素之间进行是有意义的。

C++ 指针 vs 数组

数组的名称就是数组第一个元素的指针,但不能作为左值,即不能使用自增运算符,但可使用+、-等二元运算符。

int  var[MAX] = {10, 100, 200};
   int  *ptr;
   ptr = var;//可以进行赋值操作

一个指向数组开头的指针,可以通过使用指针的算术运算或数组索引来访问数组。

C++ 指针数组

int *ptr[MAX];

这里  由于[  ]的结合性比 * 要更强,所以ptr先与[  ]结合,表示声明为一个数组,剩下的表示数组的元素类型,即int* 指针型。

字符串字面量的地址是它本身。

#include <iostream>
 
using namespace std;
const int MAX = 4;
 
int main ()
{
 const char *names[MAX] = {
                   "Zara Ali",
                   "Hina Ali",
                   "Nuha Ali",
                   "Sara Ali",
   };
 
   for (int i = 0; i < MAX; i++)
   {
      cout << "Value of names[" << i << "] = ";
      cout << names[i] << endl;
   }
   return 0;
}

 C++ 指向指针的指针(多级间接寻址)

指针的指针就是将指针的地址存放在另一个指针里面。

当一个目标值被一个指针间接指向到另一个指针时,访问这个值需要使用两个星号运算符。


c++引用

&  (1)int *p=&b  这里指取地址,返回一个指向地址的指针;

       (2)int& b=a   这里指引用,必须初始化,相当于别名,如b和a指的是同一块地址,修改b的值就是在修改a的值;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值