C++的指针很多人都很讨厌,不过这也是CPP牛A的地方。本博文主要是综合了该书:
4.7指针和自由存储空间
4.8指针数组和指针算术
4.9类型组合
涉及到的知识点简要列示如下:
- 声明指针类似这样:
//*号周围有没有空格都可以
int * p_to_int;
double * p_to_double;
char * p_to_char;
//or like this
int* p_to_int;
double* p_to_double;
char* p_to_char;
//or like this
int*p_to_int;
double*p_to_double;
char*p_to_char;
对变量使用& ,就是取它的地址:
cout<<&varofint // you will see: 006FFE54
- 对指针使用* ,就是取它所指向的那个值
double * p_double;
double bubble=3.2;
p_double=&bubble;//把bubble的地址给p_double
cout<<* p_double<<endl;//输出3.2
- new 动态创建内存,delete释放内存,需要和delete配对使用,这样就不出错,删除的时候如果是数组用:
delete[] array_name;
- 数组名就是数组第一个元素的地址
知识点有点多,感兴趣自己看看运行一下程序吧。
代码文件如下:
// pointer_all.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//本大段的程序目标是汇总所有和指针有关的一些例子,不单单是第四章,还想包括后面和指针有关的例子
#include <iostream>
#include <cstring>
#pragma warning(disable:4996);
using namespace std;
int main()
{
//1、下面演示的是取地址符号:& 的使用方法 ---P81 address.cpp
//使用常规变量时,值是指定的量,地址是派生量
int donuts = 6;
double cups = 4.5;
cout << "donut value = " << donuts;
cout << " a

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



