C语言指针快速入门

指针的基本介绍

简单的说指针用于表示地址,存放的是一个地址

获取指针的地址

复制代码
//指针的入门
#include <stdio.h>

int main() {
  int num = 1;
  //num的地址是多少
  //说明1:如果要输出一个变量的地址使用的格式是%p
  //说明2:&num 表示取出num这个变量对应地址
  printf("num的值是=%d num 地址 =%p",num,&num);
  
  getchar();
}


获取num值的本质是通过变量找到变量对应的地址,在从地址找到空间把值取出来。

修改指针的指向地址

复制代码
//指针的入门
#include <stdio.h>

int main() {
  int num = 1;
  //num的地址是多少
  //定义一个指针变量
  //1.int*表示类型为指针类型(执行了一个int类型的指针)
  //2.名称ptr介绍一个in*类型
  //3.ptr指向了一个int类型的变量
  int*ptr=&num;
  //说明1:如果要输出一个变量的地址使用的格式是%p
  //说明2:&num 表示取出num这个变量对应地址
  printf("num的值是=%d num 地址 =%p",num,&num);
  
  //指针变量,本身也有地址
  printf("\nptr的地址是%p",&ptr);
  getchar();
}

num的值是=1 num 地址 =0x7ffc7fc18f2c

ptr的地址是0x7ffc7fc18f20

printf("\nptr的地址是%p ptr存放的值是一个地址为%p",&ptr,ptr);

ptr这个空间存储的值是num的指针地址

复制代码
  //1.指针变量,本身也有地址 &ptr
  //2.指针变量,存放的地址 ptr
  //3.获取指针指向的值 *ptr

  printf("\nptr的地址是%p ptr存放的值是一个地址为%p,prt指向指针的值=%d",&ptr,ptr,*ptr);
  getchar();

num的值是=1 num 地址 =0x7ffffffde52c

ptr的地址是0x7ffffffde520 ptr存放的值是一个地址为0x7ffffffde52c,prt指向指针的值=1

指针修改对应的关系

复制代码
//指针的入门
#include <stdio.h>

int main() {
    int num=88;
    int *ptr=&num;
    //通过ptr去修改num的值,变量的值也相应的被修改了
    //取出*ptr存放的这个地址对应变量的值
    *ptr=99;
    printf("num的值=%d num的地址=%p",num,&num);
    printf("\nnum的值是=%d num的地址是=%p",num,&num);
    getchar();
    
}

指针的注意和细节

相关推荐
杨超越luckly3 分钟前
从传统 GIS 向智能/自动化脚本演进:地铁接驳公交识别的 ArcGIS 与 Python 双路径实践
开发语言·arcgis·php·交互·数据可视化
qw9495 分钟前
Python语言概述
开发语言·python
毕设源码-邱学长7 分钟前
【开题答辩全过程】以 基于Python的茶叶销售数据可视化分析系统设计实现为例,包含答辩的问题和答案
开发语言·python·信息可视化
人道领域8 分钟前
SSM从入门到入土(Spring Bean实例化与依赖注入全解析)
java·开发语言·spring boot·后端
毕设源码-赖学姐13 分钟前
【开题答辩全过程】以 基于Java web的宠物领养系统的设计与实现为例,包含答辩的问题和答案
java·开发语言·宠物
小小码农Come on14 分钟前
QT常用控件:QListWidget
开发语言·qt
1+α17 分钟前
工业通讯中的“顶梁柱”——RS485科普
c语言·stm32·嵌入式硬件·网络协议
瑞雪兆丰年兮19 分钟前
[从0开始学Java|第十三天]面向对象进阶(static&继承)
java·开发语言
小虾米 ~25 分钟前
JAVA引用类型
java·开发语言
晓131327 分钟前
第三章 【C语言篇:结构化编程】 分支循环数组函数
c语言