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();
    
}

指针的注意和细节

相关推荐
a***56067 分钟前
Windows上安装Go并配置环境变量(图文步骤)
开发语言·windows·golang
San30.13 分钟前
ES6+ 新特性解析:让 JavaScript 开发更优雅高效
开发语言·javascript·es6
烤麻辣烫34 分钟前
黑马程序员苍穹外卖(新手)DAY6
java·开发语言·学习·spring·intellij-idea
友友马1 小时前
『QT』窗口 (一)
开发语言·数据库·qt
APIshop1 小时前
Python 零基础写爬虫:一步步抓取商品详情(超细详解)
开发语言·爬虫·python
玩转C语言和数据结构2 小时前
C语言编程入门攻略(最新学习路线,适合新手小白)
c语言·c语言入门·c语言下载·c语言知识点总结·c语言自学·c语言教程·c语言怎么学
AI科技星2 小时前
为什么宇宙无限大?
开发语言·数据结构·经验分享·线性代数·算法
Appreciate(欣赏)2 小时前
JAVA使用poi类读取xlxs文件内容拼接成添加数据SQL
java·开发语言·sql
Bona Sun2 小时前
单片机手搓掌上游戏机(十四)—pico运行fc模拟器之电路连接
c语言·c++·单片机·游戏机
oioihoii2 小时前
性能提升11.4%!C++ Vector的reserve()方法让我大吃一惊
开发语言·c++