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

C++(二十)

前言:

本文主要讲解在C++中指针的概念与使用。

一,地址。

1,地址的概念。

在计算机中有存储器这一概念,他会存储变量的数值,在C++中,还有一种叫指针的概念可以直接显示出存储器中变量所在的位置。

C++中的“地址”用于直接表示存储器的位置,即存储器上的地址,大多使用十六进制数,例如0x1000,0x1001来表示,相当于在计算机内的地址。

2,地址变量。

想要知道存储变量的内存地址,需要使用取地址运算符&,语法如下:

& 变量名 //表示变量的地址

具体使用如下:

# include <iostream>
using namespace std;

int main(){
    int a = 5;
    cout << "变量a的值是:"<<a << endl;
    cout << "变量a的地址是:"<<&a << endl;
    return 0;
}

运行结果为:

给变量名加上运算符&后,就能知道变量的地址。

二,指针简介。

指针是 C++ 编程语言中的一个重要特性,允许程序直接操作内存地址。指针存储的是另一个变量的内存地址而不是其值本身。

指针提供了一种机制来间接访问数据,这使得能够更有效地处理大型数据结构如数组和链表,并支持动态内存管理以及函数间的数据共享。此外,利用指针还可以优化性能并减少不必要的复制开销。

语法:

数据类型 * 变量名  //声明指针

在使用过程中,数据类型要与所指向的变量类型一致,变量名就是是使用者所取的名字。

指针的声明步骤如下:

int * pA; //声明指针

该语句声明了能存储int型变量地址的指针pA,也可以称之为只想int型指针pA。

原则上来说,指针不能存储指定类型之外的数据地址。也就是pA只能存储int型数据地址。

例如:

# include <iostream>
using namespace std;

int main(){
    int a=10 ;
    int*pA;
    pA = &a;
    cout<<"a = "<<a<<endl;//输出a的值
    cout<<"pA = "<<pA<<endl;//输出pA,即a的地址
    cout<<"*pA = "<<*pA<<endl;//输出pA所指向的值,即a的值
    cout<<"&a = "<<&a<<endl;//输出a的地址
    return 0;
}

运行结果为:

由此可知,这段代码实现了遭致臻pA中存储变量a地址的功能,并且pA的值与&a的值一致。


http://www.kler.cn/a/506178.html

相关文章:

  • 【gin】中间件使用之jwt身份认证和Cors跨域,go案例
  • 【C++】B2112 石头剪子布
  • Web开发(二)CSS3基础与进阶
  • 深度学习中的学习率调度器(scheduler)分析并作图查看各方法差异
  • 微信小程序获取当前页面路径,登录成功后重定向回原页面
  • Windows核心编程—匿名管道双向通信
  • 在 Azure 100 学生订阅中新建 Ubuntu VPS 并部署 Mastodon 服务器
  • 使用 `npm install` 时遇到速度很慢的问题
  • .Net MVC中视图的View()的具体用法
  • 【JavaScript】比较运算符的运用、定义函数、if(){}...esle{} 语句
  • Java中的高效集合操作:Stream API实战指南
  • 【2024年华为OD机试】(B卷,100分)- 数据分类 (Java JS PythonC/C++)
  • 使用python+pytest+requests完成自动化接口测试(包括html报告的生成和日志记录以及层级的封装(包括调用Json文件))
  • 浅谈云计算14 | 云存储技术
  • Windows图形界面(GUI)-QT-C/C++ - QT 对话窗口
  • python flask简单实践
  • 谷歌浏览器的兼容性与性能优化策略
  • MySQL程序之:使用选项设置程序变量
  • 滚动字幕视频怎么制作
  • [Qt]窗口-QMainWindow类-QMenuBar、QToolBar、QStatusBar、QDockWidget控件
  • 运营媒体账号为什么需要住宅IP
  • 理解Spark中运行程序时数据被分区的过程
  • unity——Preject3——UI管理器
  • 【华为路由/交换机的ftp文件操作】
  • CSS的小知识
  • 蓝桥杯刷题第一天——判断闰年