当前位置: 首页 > news >正文

【c++】指针的学习

指针是C++中非常重要的概念,理解指针的使用可以使程序更高效,并且可以处理更加复杂的数据结构。
指针是一个变量,它存储了另一个变量的地址。通过指针访问这个变量可以提高程序的效率,尤其是在处理大型数据结构时。

在C++中,定义指针时需要使用*来声明一个指针变量。例如:

int* ptr;

这个指针变量可以指向一个整数类型的变量,可以使用&运算符获取这个变量的地址。例如:

int num = 10;
int* ptr = #

这里定义了一个整型变量num,并把它的地址赋给了指针变量ptr。

现在可以使用指针变量ptr来访问num的值,例如:

cout << *ptr << endl; //输出10

使用指针变量可以通过间接引用操作符*来访问指针所指向的变量。

指针还可以指向动态分配的内存。例如:

int* ptr = new int;
*ptr = 20;

这里使用new运算符动态分配了一个整数类型的内存,并把这个内存的地址赋给了指针变量ptr。

现在可以使用ptr访问这个新分配的内存,例如:

cout << *ptr << endl; //输出20

需要注意的是,动态分配的内存需要使用delete运算符来释放,如下所示:

delete ptr;

指针还可以指向数组。例如:

int nums[5] = {1, 2, 3, 4, 5};
int* ptr = nums;

这里把数组nums的首地址赋给了指针变量ptr。

现在可以使用ptr来访问这个数组,例如:

cout << *ptr << endl; //输出1
ptr ++;
cout << *ptr << endl; //输出2

使用指针可以遍历数组,如下所示:

for(int i = 0; i < 5; i++){cout << *(ptr + i) << endl; //输出1, 2, 3, 4, 5
}

注:需要注意的是,指针变量不要指向一个已经被释放的内存地址,否则会出现未定义的行为。此外,在使用指针时应该尽量避免指针的乱用,以免出现内存泄漏或者崩溃的问题。

相关文章:

【c++】指针的学习

指针是C中非常重要的概念&#xff0c;理解指针的使用可以使程序更高效&#xff0c;并且可以处理更加复杂的数据结构。 指针是一个变量&#xff0c;它存储了另一个变量的地址。通过指针访问这个变量可以提高程序的效率&#xff0c;尤其是在处理大型数据结构时。 在C中&#xff0…...

华为OD机试题,用 Java 解【水仙花数】问题

华为Od必看系列 华为OD机试 全流程解析+经验分享,题型分享,防作弊指南)华为od机试,独家整理 已参加机试人员的实战技巧华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典使用说明 参加华为od机试,一定要注意不…...

【Linux】-- 基本指令

目录 用户管理 adduser passwd userdel pwd ls指令 -l -a -d -F -r -t -R -1 which alias ll ls -n cd cd - cd ~ touch -d stat mkdir -p rmdir rm -r -f man cp ​编辑 -r -f mv cat -n tac more less -N head tail | 管道 dat…...

JavaScript 中的 String 类型 模板字面量定义字符串

ECMAScript 6新增了使用模板字面量定义字符串的能力。与使用单引号或双引号不同&#xff0c;模板字面量保留换行字符&#xff0c;可以跨行定义字符串&#xff1a; let str1 早起的年轻人\n喜欢经常跳步;let str2 早起的年轻人喜欢经常跳步;console.log(str1);// 早起的年轻人…...

我国防疫数据报告,2022年广东花费711亿,北京人均支出第一

哈喽大家好&#xff0c;2023年已经过去一段时间了&#xff0c;随着防疫策略的调整&#xff0c;小伙伴们是不是开始到处旅行购物了呢&#xff1f;当然了&#xff0c;对于自身的健康情况小伙伴们还是要多多关注&#xff0c;不要松懈。随着春节过后有序复工复产&#xff0c;各地纷…...

OpenCV-Python学习(22)—— OpenCV 视频读取与保存处理(cv.VideoCapture、cv.VideoWriter)

1. 学习目标 学习 OpenCV 的视频的编码格式 cv.VideoWriter_fourcc&#xff1b;学会使用 OpenCV 的视频读取函数 cv.VideoCapture&#xff1b;学会使用 OpenCV 的视频保存函数 cv.VideoWriter。 2. cv.VideoWriter_fourcc()常见的编码参数 2.1 参数说明 参数说明cv.VideoWr…...

2023-03-05力扣每日一题

链接&#xff1a; https://leetcode.cn/problems/triples-with-bitwise-and-equal-to-zero/ 题意&#xff1a; 模拟一个摩天轮&#xff0c;四个舱&#xff0c;每个舱最多四人&#xff0c;给一个数组&#xff0c;表示摩天轮每切换一次座舱会来多少人排队&#xff08;人不会走…...

真正的IT技术男是什么样的?

我们经常会听到很多对IT男士的调侃称呼&#xff0c;“屌丝”、“宅男”&#xff0c;会逗的大家捧腹大笑。但是&#xff0c;大家要不要以为称呼IT男是“屌丝”、“宅男”&#xff0c;就当真以为他们是这样了。今天&#xff0c;青鸟学姐就带大家一起来了解一下&#xff0c;真正的…...

在函数中,用指针接收就可以改变相应的内容吗??

作者&#xff1a;小树苗渴望变成参天大树 作者宣言&#xff1a;认真写好每一篇博客 作者gitee:gitee 如 果 你 喜 欢 作 者 的 文 章 &#xff0c;就 给 作 者 点 点 关 注 吧&#xff01; 我们在不管指针那篇博客&#xff0c;还是在函数那篇博客中&#xff0c;我都给大家讲解过…...

Java+ElasticSearch+Pytorch实现以图搜图

以图搜图&#xff0c;涉及两大功能&#xff1a;1、提取图像特征向量。2、相似向量检索。第一个功能我通过编写pytorch模型并在java端借助djl调用实现&#xff0c;第二个功能通过elasticsearch7.6.2的dense_vector、cosineSimilarity实现。一、准备模型创建demo.py&#xff0c;输…...

【C语言学习笔记】:指针

指针的概念 指针是一个特殊的变量&#xff0c;它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容&#xff1a;指针的类型&#xff0c;指针所指向的类型&#xff0c;指针的值或者叫指针所指向的内存区&#xff0c;还有指针本身所占据的内…...

微信小程序搭建流程

一、申请微信开发者账号虽然开发微信小程序可以使用工具提供的测试号&#xff0c;但是测试号提供的功能极为有限&#xff0c;而且使用测试号开发的微信小程序不能上架发布。因此说我们想要开发一个可以上架的微信小程序&#xff0c;首先必须要申请微信开发者账号。大家尽可放心…...

嵌入式 Linux进程间的通信--信号

目录 信号 信号的概述 信号类型 信号发送 1、kill 函数 2、raise函数 3、pause函数 信号处理 可以结合上一篇文章一起看&#xff1a; 嵌入式 Linux进程之间的通信_丘比特惩罚陆的博客-CSDN博客 信号 信号的概述 软中断信号&#xff08;signal&#xff0c;又简称为…...

Vue3 核心模块源码解析(中)

【Vue3 核心模块源码解析(上)】讲到了 Vue2 与 Vue3的一些区别&#xff0c;Vue3 新特性的使用&#xff0c;以及略微带了一点源码。那么这篇文章就要从Vue3 模块源码解析 与 Vue3 执行逻辑解析这两个方面去给大家剖析 Vue3 的深层次&#xff0c;一起学习起来吧&#xff01; 这里…...

华为OD机试题 - 剩余可用字符集(JavaScript)| 含思路

华为OD机试题 最近更新的博客使用说明本篇题解:剩余可用字符集题目输入输出示例一输入输出说明Code解题思路华为OD其它语言版本最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全…...

焦虑的根源

归结起来&#xff0c;焦虑的原因就两条:想同时做很多事&#xff0c;又想立即看到效果。王小波说:人的一切痛苦&#xff0c;本质上都是对自己无能的愤怒。焦虑的本质也契合这一观点:自己的欲望大于能力&#xff0c;又极度缺乏耐心。焦虑就是因为欲望与能力之间差距过大。再往深了…...

1.认识网络爬虫

1.认识网络爬虫网络爬虫爬虫的合法性HTTP协议请求与响应(重点)网络爬虫 爬虫的全名叫网络爬虫&#xff0c;简称爬虫。他还有其他的名字&#xff0c;比如网络机器人&#xff0c;网络蜘蛛等等。爬虫就好像一个探测机器&#xff0c;它的基本操作就是模拟人的行为去各个网站溜达&am…...

【论文速递】WACV 2023 - 一种全卷积Transformer的医学影响分割模型

【论文速递】WACV 2023 - 一种全卷积Transformer的医学影响分割模型 【论文原文】&#xff1a;The Fully Convolutional Transformer for Medical Image Segmentation 【作者信息】&#xff1a;Athanasios Tragakis, Chaitanya Kaul,Roderick Murray-Smith,Dirk Husmeier 论…...

加密图像的脆弱水印及应用

原文题目&#xff1a;《A self-embedding secure fragile watermarking scheme with high quality recovery》 学习笔记&#xff1a; 应用场景 为了确保图像在传输过程中不被损坏&#xff0c;在将原始图像发送到云端之前&#xff0c;将用于篡改检测和恢复的水印嵌入到原始图像…...

python线上商城网站项目前台和后台源码

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;python51 获取完整源码源文件说明文档配置教程等 1、网站前台 在虚拟环境中启动程序后&#xff0c;使用浏览器访问“http://127.0.0.1:5000”即可进入网站前台首页。如图1所示。 单击首页左上角“注册”按钮&#xff0c;进…...

容器镜像深度解析与生产级部署实战指南

1. 项目概述&#xff1a;从容器镜像名到高效部署实践的深度解析最近在梳理内部容器镜像仓库时&#xff0c;一个名为containers/ramalama的镜像引起了我的注意。这个名字乍一看有些无厘头&#xff0c;甚至带点戏谑&#xff0c;但在容器化部署的实践中&#xff0c;这类看似随意的…...

HS2-HF Patch:3步安装HoneySelect2终极增强补丁完整指南

HS2-HF Patch&#xff1a;3步安装HoneySelect2终极增强补丁完整指南 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF Patch是HoneySelect2玩家的游戏增强…...

NRF52832串口DFU保姆级教程:不用nRFgo Studio,手把手教你用nrfutil命令行搞定固件合并与升级

NRF52832串口DFU全流程实战&#xff1a;从密钥管理到自动化升级脚本 在嵌入式开发中&#xff0c;固件升级能力已成为现代IoT设备的核心需求。NRF52832作为Nordic Semiconductor的明星BLE SoC&#xff0c;其串口DFU功能为设备维护提供了可靠的有线升级方案。与依赖nRFgo Studio等…...

Win10/Win11网络适配器出问题?试试这个重置TCP/IP和Winsock的终极命令(netsh winsock reset)

彻底解决Windows网络协议栈故障&#xff1a;netsh命令深度指南 当你的Windows 10或11设备突然无法联网&#xff0c;甚至连网络适配器都显示异常时&#xff0c;大多数人会本能地尝试重启电脑或切换飞行模式。但如果你发现这些常规操作毫无效果&#xff0c;甚至Windows自带的网络…...

CTP接口实战:从零构建量化交易系统(附完整源码)

1. CTP接口入门&#xff1a;量化交易的第一块基石 第一次接触CTP接口时&#xff0c;我盯着那堆C代码发呆了半小时——这玩意儿比我想象的复杂多了。后来才发现&#xff0c;其实把它理解成期货市场的普通话就简单了。就像我们用普通话跟人交流&#xff0c;程序用CTP接口跟期货交…...

layerJS与现代前端框架集成:Vue、React、Angular中的最佳实践指南 [特殊字符]

layerJS与现代前端框架集成&#xff1a;Vue、React、Angular中的最佳实践指南 &#x1f680; 【免费下载链接】layerJS layerJS: Javascript UI composition framework 项目地址: https://gitcode.com/gh_mirrors/la/layerJS layerJS是一个创新的JavaScript UI组合框架&…...

ITK-SNAP:掌握医学图像分割的5个关键步骤

ITK-SNAP&#xff1a;掌握医学图像分割的5个关键步骤 【免费下载链接】itksnap ITK-SNAP medical image segmentation tool 项目地址: https://gitcode.com/gh_mirrors/it/itksnap ITK-SNAP是一款功能强大的开源医学图像分析软件&#xff0c;专门用于3D医学影像的分割、…...

QtUnblockNeteaseMusic终极指南:跨平台音乐解锁工具的技术实现与应用

QtUnblockNeteaseMusic终极指南&#xff1a;跨平台音乐解锁工具的技术实现与应用 【免费下载链接】QtUnblockNeteaseMusic A desktop client for UnblockNeteaseMusic, made with Qt. 项目地址: https://gitcode.com/gh_mirrors/qt/QtUnblockNeteaseMusic 在数字音乐流媒…...

离线语音技术如何重塑智能照明:从核心原理到产品实战

1. 从“在线”到“离线”&#xff1a;智能照明交互的范式转变作为一名在智能家居领域摸爬滚打了十来年的从业者&#xff0c;我亲眼见证了智能照明从最初的手机APP遥控&#xff0c;到后来的智能音箱联动&#xff0c;再到如今离线语音技术的兴起。每次技术迭代&#xff0c;都不仅…...

Harness Engineering 讲解

Harness 工程过去很长一段时间里&#xff0c;大家一提到“大模型怎么用好”&#xff0c;第一反应往往是&#xff1a;Prompt 怎么写&#xff1f; 于是&#xff0c;Prompt Engineering 成了很多人学习大模型的第一站。我们学习如何提问&#xff0c;如何给角色&#xff0c;如何写任…...