p56 p57 p58
p56 指针的定义和使用
1.指针的作用:可以通过指针间接访问内存(指针是存放地址的)
*内存编号是从0开始记录的,一般用16进制数字表示
*可以利用指针变量保存地址
指针的定义语法:数据类型 * 变量名;
#include<iostream> using namespace std;int main() {//指针的定义:int hehe = 10;cout << "hehe = " << hehe << endl;int* p;//让指针定义变量hehe的地址p= &hehe;//不用指针输出变量hehe的地址:用取址运算符cout << "hehe的地址为:" << (int)&hehe << endl;//用指针输出变量hehe的地址:cout << "p输出的是" << (int)p << endl; //用(int)强制转成整型输出地址//用*p 间接访问内存空间//指针前加一个✳ 代表解引用:找到指针指向的内存中的数据。cout << "*p输出的是" << *p << endl;system("pause");return 0; }
!!用*p 间接访问内存空间
//指针前加一个✳ 代表解引用:找到指针指向的内存中的数据。*p也可以间接修改内存中的数据
int main() { int hehe = 100; int *p = &hehe ; cout<<"hehe的值为:"<< hehe<<endl; cout<<"*p的值为:"<< *p<<endl; //通过*p修改指针指向的内存中的值 *p = 500; cout<<"hehe的值为:"<< hehe<<endl; // 这时指针解引用修改了内存中的值: 输出hehe等于500 }
P57 :指针所占内存空间
不管是什么类型的数据:
在64位操作系统下指针类型统一占8个字节
在32位操作系统下指针类型统一占4个字节#include<iostream> using namespace std; int main() {int hehe = 10;int* p = &hehe;cout << "int *p占多少内存空间 " << sizeof(int*) << endl;cout << "double *p占多少内存空间 " <<sizeof(double*) << endl;cout << "char *p占多少内存空间 " << sizeof(char*) << endl;cout << "flaot *p占多少内存空间 " << sizeof(float*) << endl;cout << "long *p占多少内存空间 " << sizeof(long*) << endl;cout << "long long *p占多少内存空间 " << sizeof(long long*) << endl;system("pause");return 0; } /*不管是什么类型的数据: 在64位操作系统下指针类型统一占8个字节 在32位操作系统下指针类型统一占4个字节 */
p58 :空指针
空指针:指针变量指向内存中编号为0的空间
(当一开始不知道初始化什么的时候可以用)
用途:初始化指针变量
注意:空指针指向的内存空间不可以访问(用户没有权限访问)
* 0~255之间的内存编号是系统占用的,因此不允许用户访问
定义:
int *p = NULL;
编译器提示错误:引发了异常: 读取访问权限冲突。
p 是 nullptr。
P59 :野指针
:指针变量指向越界的内存空间(访问了没有权限的内存空间)
报错:
#include<iostream> using namespace std; int main() {// 指针变量p指向内存地址编号为 0x1100的空间int* p = (int*)0x1100; //因为这个内存空间不是自己定义开辟的//访问野指针cout << *p << endl;/*报错内容:引发了异常: 读取访问权限冲突。p 是 0x1100。*/;system("pause");return 0; }
**空指针和野指针都不是我们自己申请的空间,因此不要访问。
p56 p57 p58相关推荐
- 基于FPGA的分形编码器verilog设计
目录 一.理论基础 二.核心程序 三.仿真测试结果 一.理论基础 分形图像编码是目前较有发展前途的图像编码方法之一, 也是目前研究较为广泛的编码方法之一.对其研究已有近十年的历史,其间,人们发现了它所 ...
- 6个例子让你彻底明白,什么是纳什均衡
6个例子让你彻底明白,什么是纳什均衡 电影<美丽心灵>的主人公原型--约翰·纳什因车祸去世.你也许听说过他是厉害的数学家.1994 年诺贝尔经济学奖得主.博弈论之父--但是,他的最大贡献是 ...
- jquery --- 使用when方法等待2个异步事件结束后执行某一个函数.
$.when(promise1, promise2) .done(function(args1, args2){console.log(args1 + args2); }// 上述代码,等待promi ...
- 【Python】小甲鱼Python学习总结——代码版
看了50P左右的小甲鱼B站的Python视频,按需学习,因此有些P可能会有遗漏.以下是自己跟着视频敲的代码,一些知识点和自己的理解写在了注释里.注释要遵守PEP8的规范. 同时Python的另一个教程 ...
- 概率论与数理统计---分布函数
#前言# 前言部分讲了为什么使用CSDN记录数学笔记和为什么要学<概率论与数理统计>的原因,和实际学习内容没有关系. 之前学线性代数的时候写的笔记都在纸质的笔记本上,在纸质上面想查询比较麻 ...
- 91.p58.space http://email.91dizhi.at.gmail.com06监测模块测试入口index.php
91.p58.space http://email.91dizhi.at.gmail.com06监测模块测试入口index.php 名片进入公众号[娱乐857] 即可获取完整版资料 监测点入口 解析I ...
- 【P56】锂电池边充边放和升压电路
王世杰:[P28]极简全分立耳放(22版) [P28]极简全分立耳放的供电为直流 9V~12V,之前一直用淘宝上一家做 UPS 模块的厂家生产的板子供电,后来我决定自己来制作,才有了最近的几个关于锂电 ...
- 未来人P57堪称最强笔记本
售价约21万元 未来人P57堪称最强笔记本我们曾经肯定听说过外星人笔记本,强大的配置以及强炫酷的外观让我们动情不已,但是碍于价格太高,大部分人也只能看看.不过今天小编给大家介绍的是价格更高的地球人P5 ...
- 【李宏毅2020 ML/DL】P58 Unsupervised Learning - Neighbor Embedding | LLE, t-SNE
我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的.自己不知道的东西. 已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-note ...
最新文章
- css中关于居中的那点事儿
- 卡方 python_Python评分卡建模—卡方分箱
- Laravel 5.0 - Middleware (中间件)
- 计算机软件技能高考好考么,湖北技能高考:上不了本科,优先考虑这4所一档高职...
- 编写干净的测试–天堂中的麻烦
- 中奖名单模板_春分纪中奖名单出炉~才艺主公用“树叶阵法”致敬率土!
- Mac下运行git报错xcrun: error: invalid active developer path ..
- 冬奥开幕在即,现场通信网络技术深度揭秘!
- 130、 Android OkHttp完全解析(转载)
- java runnable 使用_java – 在哪里使用可调用以及在哪里使用Runnable接口?
- 古城钟楼微博地支报时程序铛,100行代码实现,价值一天20万粉丝
- SpringCloud版本Hoxton SR5 --- 第二讲:eureka 、eureka与zookeeper的区别与使用场景。
- AD9854PCB的绘制以及调试中存在的问题以及解决方法
- sun.misc.BASE64Encoder是内部专用 API, 可能会在未来发行版中删除
- iOS 手机照片上传服务器方向不对的原因以及解决方法
- 基于RBAC 的SAAS系统权限设计
- RCNN系列发展历程
- 如何快速跑一个sumo的交通仿真
- mint-ui 中 popup 组件的 closeonclickmodal 无效
- 南都周刊:别了,老兵乔布斯
热门文章
- 《Fundamentals Of Computer Graphics》虎书第三版翻译——第五章 线性代数
- 产业互联网,一次从需求侧向供给侧的自我嬗变
- 15_Python3.6+selenium2.53.6自动化测试_登录126邮箱
- IKEA宜家社会责任验厂标准
- 计算机标记的定义,标记网格法
- 关于focusableInTouchMode不生效的问题
- 使用自定义的Layer和Cell实现手写汉字生成(Tensorflow2)
- 肾虚的信号你明白嘛?
- SqlHelper——数据库小助手
- 免费远程协助软件,可以手机控制电脑,电脑控制电脑!