首页 > 其他分享 >指针和引用

指针和引用

时间:2023-11-28 13:55:18浏览次数:30  
标签:字符 变量 指向 地址 引用 指针

难易度:简单

备考建议

指针是无法在复赛考察的,所以在初赛考察的可能性大,大家平常写题目又不用,所以在初赛备考时应该引起重视。

结合2023新修订的考试大纲。除了指针本身的概念,涉及到指针的知识点共有3个:

1.基于指针的数组元素访问 2.字符指针 3.指向结构体的指针

什么是指针

指针是一种数据类型,专门存放地址。指针变量在64位系统中占八个字节,在32位系统中占四个字节。

一个内存单元的位置叫做内存单元的地址,通常用取地址符 & 表示,scanf&a表示将键盘输入的内容存放到变量a的地址中。

指针变量的声明

指针变量声明的一般形式为:

type *pointer-name

例如: int *ptr,声明了一个整型的指针变量ptr。这意味着当执行ptr++操作时,指针的地址会自动加4,原来整型指针加1时会指向下一个int(整数)。

指针变量的初始化

指针变量一旦存在,必须进行初始化,就像main函数里的整型变量,不赋初值就会是一个随机数一样,指针变量不赋初值就会成为“野指针”, 把整个程序搞崩溃!!!如果没什么特定的位置那么就给指针赋为空, 即prt = NULL

通常指针变量的初始化也可以和声明合并,如下:

double num = 3;

double *pNum = #

指针变量的赋值

对于两个指针变量 ptr1ptr2, 执行ptr2 = ptr1, 表示ptr1ptr2指向同样的地址,也就是说,两个指针指向同一个内存单元,对ptr2的任何改动都会影响ptr1的值,反之亦然。

需要注意的是, cout << *ptr 输出的是指针ptr指向的内存单元中的数值而非内存单元的地址。

标签:字符,变量,指向,地址,引用,指针
From: https://www.cnblogs.com/luliusheng/p/17861803.html

相关文章

  • c语言中函数指针用法
    #include<stdio.h>#defineMAX10voidswap(int*x,int*y){inttemp;temp=*x;*x=*y;*y=temp;}voidfun(int*height,int*age){intn=10;*height=n*10;*age=n*2000;}int*createArray(intsize){......
  • 【Cxx 20】使用 std::span 代替数组指针传参
    我们知道std::string_view可以创建std::string的一个视图,视图本身并不拥有实例,它只是保持视图映射的状态。在不修改实例的情况下,使用std::string_view会让字符串处理的性能大幅提升。实际上,对于那些连续的序列对象我们都可以创建这样一份视图,对于std::vector这样的对象可以提高某......
  • 无涯教程-Linux - 引用机制
    在本章中,我们将详细讨论Shell引用机制。我们将从讨论元字符开始。元字符UnixShell提供了各种元字符,这些元字符在任何Shell脚本中使用时都有特殊的含义,并且除非引号引起,否则会导致终止。如,?匹配单个字符,而在目录中列出文件,而*匹配多个字符。这是大多数Shell特殊字符(也称为......
  • 结构体中的指针
    结构体中的函数指针C++中面向对象的实现过程,其实是在结构体中加入函数指针用来调用成员函数的;函数指针详解include<stdio.h>typedefvoid(*PRINT)(struct*pMM);//声明一个函数指针,这个函数指针的参数为struct*pMM类型的structMM{ intage; char*name; *PRINTpPri......
  • 不要轻易定义指向std::vector中的元素的指针
    类应该是被封装的,类的用户通过接口使用类提供的功能,而不必关心类的内部如何实现。然而,C++标准库容器std::vector的实现渗透到了接口中来。对于以下代码:constintpushNum=10;std::vector<int>v={1,2,3};int*p=&v[1];std::cout<<"*p="<<*p......
  • 小白指针(七)--------新手入门
    我们之前讲了很多。但是指针的路还需要继续往下走,其实也快结束了,学习就是一种坚持的路,只有往前走才能学到更多,看到更多。(。・ω・。),今天的可能比前面的多,请耐心学习,谢谢在指针更新完之后我会将指针的内容,整理发一片这里是指针的快结束了,这里的一节结束还有最后有一片文章了,朋友们加油呀!一......
  • 【WPF】如何引用System.Windows.Forms;
    修改项目的csproj文件<PropertyGroup><OutputType>WinExe</OutputType><TargetFramework>net6.0-windows</TargetFramework><Nullable>enable</Nullable><UseWPF>true</UseWPF><UseWindowsFo......
  • 深入指针
    一、指针概括1、指针定义 Def: 指针(pointer)也就是内存地址(指针==地址),指针变量是用来存放内存地址的变量,在同一CPU下,不同类型的指针变量所占用的存储单元长度是相同的,但所占空间大小由指针变量的类型所决定。有了指针以后,不仅可以对数据本身,也可以对存储数据的变量地址进行操......
  • 关键字 开发-04 yaml文件定义变量与引用变量
    前言:上篇使用jinja2模板渲染数据是在读取yaml文件的时候,进行渲染。这种肯定不是关键字框架的渲染的方式。正常我们想要的而是在yaml文件中写入我们想要渲染的数据,然后读取之后渲染到测试yaml用例中。1.在yaml文件中引入变量由于变量在yaml中先声明,后引用,所以不能直接渲染整个ya......
  • Win10 添加或删除功能时报错:0x80073701,找不到引用的汇编 (ERROR_SXS_ASSEMBLY_MISSING
    问题描述:当通过控制面板或DISM命令或PowerShell命令Enable-WindowsOptionalFeature修改Windows功能时,可能会遇到此报错,导致功能修改失败。关于这个问题的来源,英文版的错误信息很明确:ERROR_SXS_ASSEMBLY_MISSING,有SXS组件找不到,中文机翻痕迹明显,压根看不懂是啥意思。如果你是......