指针:是保存地址的变量
- 同常用p表示
- 格式如 int*P=&i;
- 意思是*p是i的指针,类型是int
变量的值是内存的地址
- 普通变量的值是实际的值
- 指针变量的值是具有实际值的变量的地址
当指针作为参数时
- void f(int*p);
- 在被调用的时候得到了某个变量的地址: int i=O; f(&i);
- 在函数里面可以通过这个指针访问外面的这个i
指针的特点
*是一个单目运算符,用来访问指针的值所表示的地址上的变量
可以赋值也可以被赋值
- int k =*p;
- .*p = k+1;
&取地址,*取该地址的变量
指针的应用
交换两个变量的值
2.
- 函数返回多个值,某些值就只能通过指针返回
- 传入的参数实际上是需要保存带回的结果的变量
3.
- 函数返回运算的状态,结果通过指针返回
- 堂用的套路是让函数返回特殊的不属于有效范围内的值来表示出错: -1或0(在文件操作会看到大量的例子)
- 但是当任何数值都是有效的可能结果时,就得分开返回了
指针真的好难........听不懂...........
慢慢消化得了