在小编这里,没有任何学习知识的顺序,写到的东西对初学者肯定是有用处的,前提,你真的把C语言学完的那些初学者。
在讲明指针的知识前,或许有人一直说不会指针你学不会C++,或者说你所学C++的深度,全凭你所了解指针用法的多少。
那么,在小编这里请你删除那些言论。
我们一直追求一个知识点的时候,只是跟风般的去学,根本不知道为何要用到知识点,如何用?
下面的一些话有的是找到的,也有自己的见解:
一个数据类型的变量名,可以说是跟内存地址挂钩的,只要是变量它都有一个单独的内存地址,可能因为某些原因,想精确的找到内存地址上存储的数据,因此用到指针这一特殊访问内存的机制,对内存进行直接操作。
对于指针的知识点,全靠你敲代码,看规律,找规律,自己总结出一套属于自己的见解,你就离学会指针不远了。
指针,就是一个地址,不管哪个类型的变量,你就把它看作是一个地址,存储数据的地址。对于编译器而言,它找对了地址就自然能将数据找到。
#include <iostream>
using namespace std;
int main()
{
int number = 0; //声明定义number初始化为0
int *p = NULL; //声明定义指针p初始化为空
p = &number; //&number 将number的地址赋值给地址p
cout << *p << endl; //打印*p,即首地址的值
system("pause");
return 0;
}
能看出什么?变量和地址,它们之间的关系并不复杂,关键你能把地址、变量先分开看清楚。地址跟地址,变量跟变量。
看运行结果:0,即number的初始化值。
或许有人会问为什么打印地址不能将数值打印出来,小编的见解很简单:一段路程,只知道起点,走出了第一步时你只知道起点,你根本不知道终点与起点的距离(元素数据),当你走过一段后,路程距离多少你根本不知道,回头一看一想,只知道起点在哪。
那么指针地址也一样的,不管地址内摆放什么东西(路程的距离),当你找到此地址时(路程),你只知道首地址(起点地址)。
为什么加上*号,你就看作是记忆那印记,没有想到那点印记时,你就不会想到那个起点在哪。通俗的讲就是:一个印记代表一个起点,你知道了哪个印记,就知道那个起点在哪。
而编译器呢?她将起点按逻辑数字一个个串起来的,数字累加起来的,你找到哪个数字,就能找到数字地址上的数据。
指针,它按数据类型的
看下面:
#include <iostream>
using namespace std;
int main()
{
char str[] = "helloworld!";
char *p = str; //str本身就是地址,所以一级指针不需要加&
cout << *p << endl; //cout << *(p + 0) << endl;
cout << *(p + 1);
cout << *(p + 2);
cout << *(p + 3);
cout << *(p + 4);
cout << *(p + 5);
cout << *(p + 6);
cout << *(p + 7);
cout << *(p + 8);
cout << *(p + 9);
cout << *(p + 10);
cout << *(p + 11);
system("pause");
return 0;
}
运行的结果:helloworld!
那么怎么才能分辨哪个地址对应哪个数据呢?这个其实没必要管,因为编译器知道,你只要将地址告诉编译器,她能找到数据,毕竟这属于初学者需要了解的。
记住:指针地址永远同等为地址的数据对接,简而言之,地址=地址,变量=变量。
深入了解下,为什么改变了首地址值时,对原来的数据有影响呢?
#include <iostream>
using namespace std;
int main()
{
int number = 123;
int *p = &number; //地址=地址,p就是number的地址,p指向number
*p = 321; //看作是*(p+0)=321,*(p+0)是谁的地址?number
cout << number << endl;
system("pause");
return 0;
}
按道理说,改变了一个*p时,跟原来的number没有关系才对,可是还是对原来的number值做出改变。为什么?
前面说过:地址=地址,变量=变量;那么当p=&number,没错,意思就是p为123的地址,当*p=321,没错,意思就是这个地址不变,里面的数据变了,为321;那个变了的数据是什么?赋值的number
简而言之:p它是地址没错,谁的地址?int *p 设定为NULL的地址,当p=&number时,即p指向number的地址;当*p=321时,即*(p+0)=321(number为321);不管*p怎么改变,地址没有变,变得是number,
这只是小编的理解。有点复杂,看不懂的也没关系,你只要知道:将变量以地址方式给一个地址,改变了首地址值时,对原来的数据有影响。
看完上面的内容, 是不是感觉有点懂呢?看看下面的,看看你能否看懂:
aaarticlea/png;base64,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" alt="" />
看看运行结果,这是一个九九乘法表。这个看不懂没关系,可以肯定的告诉你,你也会懂,摸索出一套指针的用法后,对自己的学习很有用处的。一定要学会自己不断敲打代码,你才会挖掘出有意思的东西。
指针的用途很广泛,这个不能操之过急的想掌握就能掌握的,可以明确的说真理往往是从不断实践中总结出来的。
指针的用法,搞清楚:谁是指针,谁是变量,谁需要地址,谁需要转化为地址。
往往编译器报出无法访问内存,内存溢出,访问冲突等等原因,请记住一定是内存的那里错误,找到源头逐步查看,用编译器的断点功能,你定会有所发现,某个数据要么为NULL,要么是一堆乱码,要么是一堆乱七八糟的数字。。。
- 【C语言探索之旅】 第二部分第二课:进击的指针,C语言的王牌!
内容简介 1.课程大纲 2.第二部分第二课: 进击的指针,C语言的王牌 3.第二部分第三课预告: 数组 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言 ...
- 【C语言探索之旅】 第三部分第二课:SDL开发游戏之创建窗口和画布
内容简介 1.第三部分第二课: SDL开发游戏之创建窗口和画布 2.第三部分第三课预告: SDL开发游戏之显示图像 第三部分第二课:SDL开发游戏之创建窗口和画布 在上一课中,我们对SDL这个开源库做 ...
- OpenCV 第二课 认识图像的存储结构
OpenCV 第二课 认识图像的存储结构 Mat Mat 类包含两部分,矩阵头和矩阵体.矩阵头包含矩阵的大小,存储方式和矩阵体存储空间的指针.因此,Mat中矩阵头的大小是固定的,矩阵体大小是不定的. ...
- 【第二课】深入理解Handler
简要讲解Handler是做什么的 我们知道,在Android中,app启动会启动一个进程一个线程——UI线程,UI线程是主线程,并且不允许这个线程阻塞超过5秒,一旦超过5秒就会ANR. 所以较为耗时的 ...
- grails2.3.11第二课
第二课主要介绍grails相关插件的使用,这是敏捷开发所必需的途径. 可以把grails的插件看作是grails正常项目的迷你型,因为看插件的源码,它的目录结构和正常项目相差无几. 官方开源插件地址 ...
- 【C语言探索之旅】 第二课:工欲善其事,必先利其器
内容简介 1.课程大纲 2.第一部分第二课:工欲善其事,必先利其器 3.第一部分第三课预告:你的第一个程序 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C ...
- TCP/IP 网络精讲:OSI七层模型(第二课)
内容简介 1.前言 2.第一部分第二课:互联网的创立,OSI七层模型 3.第一部分第三课预告:OSI第一层,连接你的机器 前言 PS:昨天做了课程大纲之后,发现这个坑挖得有点大.不过既然挖了,岂有不跳 ...
- Octave Tutorial(《Machine Learning》)之第二课《数据移动》
第二课 Moving Data 数据移动 常用内置函数 (1)加载文件 load 文件名.dat(或load('文件名.dat')) 接着输入文件名便可查看文件里的数据 (2)显示当前工作空间的所有变 ...
- c/c++ 函数指针的用法
[目录] 基本定义 c 函数指针使用举例 c++ 函数指针使用举例 函数指针作为函数参数 函数指针作为函数返回值 函数指针数组 typedef 简化函数指针操作 c语言函数指针的定义形式:返回类型 ( ...
随机推荐
- Windows Hook技术
0x01 简介 有人称它为“钩子”,有人称它为“挂钩”技术.谈到钩子,很容易让人联想到在钓东西,比如鱼钩就用于钓鱼.编程技术的钩子也是在等待捕获系统中的某个消息或者动作.钩子的应用范围非常广泛,比如输 ...
- QButtonGroup按钮组
继承 QObject 提供 一个抽象的按钮容器, 可以将多个按钮划分为一组,不具备可视化的效果,一般放的都是可以被检查的按钮 import sys from PyQt5.QtWidgets impo ...
- Mysql5.7数据导出提示--secure-file-priv选项问题的解决方法
mysql可使用into outfile参数把表中的数据到处到csv,示例如下: select user_id from weibo_comment into outfile '/home/dazha ...
- Burp插件开发——环境配置
最近打算开发个Burp插件,从网上各种地找资料学习.第一步就应该是环境配置,请见下文. (其实最重要的前提是你已经安装了Burp,否则下面的所有内容都是无稽之谈了. https://pan.baidu ...
- python元组类型的变量以及字符串类型的变量作为参数进行传值
今天做selenium元素对象剥离时(我把元素对象都放到了元组类型的变量中,格式:user = (“id”,“X-Auto-2”)),遇到一个元组变量,以及str字符串变量一起作为参数传值的问题,发现 ...
- emos邮件系统的web密码修改方法
作者:邓聪聪 1.修改web管理界面的登陆密码,数据库修改管理员密码,有root用root,没root用系统用户.查看方法 进入数据库查看到管理表项中的root管理账户信息, mysql> u ...
- ABP core学习之二 IIS部署.NET CORE
本文是关于IIS部署.NET CORE的总结,以后有碰到问题将陆续添加 IIS部署.NET CORE总结 一.服务器环境 首先确定自己项目的core版本,然后下载对应的包在服务器上安装 下载地址: h ...
- 【easy】141. Linked List Cycle
非常简单的题:判断链表有没有环(用快慢指针) /** * Definition for singly-linked list. * struct ListNode { * int val; * Lis ...
- notepad++安装nppFTP
官网下载的最新版notepad++,结果pluginadmin里面installnppftp总是安不上,点击install之后然后点是就退出,再进去也没有安装好. 网上找了半天也没找到什么有用信息,最 ...
- 搭建Linux运行环境-虚拟机
1.虚拟机软件介绍 虚拟机(Virtual Machina)软件就是一套特殊的软件,它可以作为系统独立运行,也可以运行与系统之上. 若是运行与系统之上的虚拟机软件,在一台电脑(PC或笔记本等)上安装虚 ...