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

一级指针的介绍

指针变量的定义的一般形式

类型标识符   *变量名       如 int *p;

解释:p是一个指针变量,用来存放整型变量的地址。(这里定义了一个指向整形数据的指针变量)p本身也是有一个地址的(对二级指针有帮助,这里主要说一下一级指针)

注意:1、int *p=&a,a;  这是错误的因为变量只有被定义后才能被分配内存单元,而这句代码说的是一个int形的指针指向a的地址。然而a的地址在被指向之前未被定义。2、被定义的类型指针只能指向该类型的变量的地址。

例如 :int a,*p=&a;

            float  *p1;

           p1=p;这样的幅值是错误的,需要幅值则需要强制类型转换如  p1=(float *)p;

原因,不同类型的指针变量访问的储存单元大小不一样,char和int就不一样,除此之外不同类型数据的储存格式也不一样。

定义指针用  int *p;引用指针的变量的内容用  *p;  *p表示指针指向的内容。

#include <stdio.h>int main() 
{int num = 10;  // 定义一个整型变量int *ptr;      // 声明一个指向整型的指针变量ptr = &num;    // 初始化指针,使其指向变量 num 的   //*ptr = 20; 这一操作将指针 ptr 所指向的变量 num 的值修改为 20。printf("num 的值: %d\n", num);printf("通过指针 ptr 访问 num 的值: %d\n", *ptr);//输出是10  10 printf("num 的地址: %p\n", &num);printf("指针 ptr 存储的地址: %p\n", ptr);//输出是num和ptr变量的值 return 0;
}

指针作为函数参数:把指针作为函数参数传递,能够在函数内部修改调用函数中的变量值。示例如下:

#include <stdio.h>void swap(int *a, int *b){int temp = *a;*a = *b;*b = temp;
}int main() 
{int x = 5, y = 10;printf("交换前: x = %d, y = %d\n", x, y);swap(&x, &y);printf("交换后: x = %d, y = %d\n", x, y);return 0;
}
//输出5,10//输出10,5

swap 函数接收两个指针作为参数,通过解引用操作交换这两个指针所指向变量的值。

指针变量引用的注意事项

  • 空指针:指针变量可以被初始化为 NULL,表示它不指向任何有效的内存地址。在使用指针之前,最好先检查它是否为 NULL,以避免空指针引用错误。
  • 野指针:野指针是指指向无效内存地址的指针。使用野指针可能会导致程序崩溃或产生未定义行为。要避免使用野指针,确保在使用指针之前对其进行正确的初始化。

相关文章:

  • 如何使用Labelimg查看已经标注好的YOLO数据集标注情况
  • webgl入门实例-12WebGL 投影矩阵 (Projection Matrix)基本概念
  • 电子级化学品除杂的必要性
  • java线程池原理及使用和处理流程
  • 【AI部署】腾讯云GPU-常见故障—SadTalker的AI数字人视频—未来之窗超算中心 tb-lightly
  • ESP8266简单介绍
  • cpolar 内网穿透 实现公网可以访问本机
  • 智能体时代的产业范式确立,中国企业以探索者姿态走出自己的路
  • 【卡洛诗】成为平价市场中的标杆西餐厅
  • 守护进程编程、GDB调试以及外网连接树莓派
  • 关于@Scheduled注解的参数
  • NOIP2015提高组.信息传递
  • 工厂方法模式详解及在自动驾驶场景代码示例(c++代码实现)
  • AI象棋 3.0 |AI自动下象棋工具,破译残局,自动帮助下棋,内置视频教程
  • `peft`(Parameter-Efficient Fine-Tuning:高效微调)是什么
  • 跟我学C++中级篇——内存异常的分析
  • 自注意力机制self-attention
  • C++智能指针的知识!
  • 【HDFS入门】联邦机制(Federation)与扩展性:HDFS NameNode水平扩展深度解析
  • Ubuntu命令速查
  • 美伊第二轮核问题间接谈判结束,伊方称“结果是建设性的”
  • “中国电三之都”江苏丰县成功举办第十五届电动车展览会
  • 文理医工“四轮驱动”,复旦六大新工科创新学院核心团队均亮相
  • 平安银行一季度净赚超140亿元降5.6%,营收降13.1%
  • 外交部介绍中印尼“2+2”机制首次部长级会议将讨论的议题
  • 为震慑违法违规行为,市监总局发布一批直播电商领域典型案例