13:指针

指针

  • 指针也就是内存地址,指针变量是用来存放内存地址的变量。就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明。

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

type *var_name;
  • type 是指针的基类型,它必须是一个有效的 C 数据类型,var_name 是指针变量的名称。用来声明指针的星号 * 与乘法中使用的星号是相同的。但是,在这个语句中,星号是用来指定一个变量是指针
int    *ip;    /* 一个整型的指针 */
double *dp;    /* 一个 double 型的指针 */
float  *fp;    /* 一个浮点型的指针 */
char   *ch;    /* 一个字符型的指针 */

指针—生活上的理解

  • 医生对病人诊断
  • 电脑上面的快捷方式


理解

  • 指针指向的内容,内容可以做出改变,但是指针不变
  • 就像电脑桌面上的快捷方式一样

现实生活中的空指针和野指针

野指针

int * p ;
  • 程序这时候会随机分配 , 防止空指针的产生异常

  • 没有意义的指向

  • 相当于医生疯了,乱找人看病

空指针

  • 在变量声明的时候,如果没有确切的地址可以赋值,为指针变量赋一个 NULL 值是一个良好的编程习惯。赋为 NULL 值的指针被称为空指针
  • NULL 指针是一个定义在标准库中的值为零的常量

代码演示

#include<stdio.h>

int main(void)

{

    int sun_flower = 100;

    // 相当于创建了快捷方式
    int *p = &sun_flower;

    printf("sun_flower address = %p\n" , &sun_flower);

    //  p的输出地址 , p指针 point
    printf("p = %p\n" , p);

    printf("拿到sun_flower的真实数据 : %d\n" , sun_flower);
    //   printf("拿到sun_flower的真实数据 : %ls\n" , p);

    // 这个就相当于快捷方式
    printf("通过指针 (快捷方式) 拿到sun_flower的值: %d\n" , *p);

    return 0;
}

输出结果

sun_flower address = 0x7ffffc09a1bc
p = 0x7ffffc09a1bc
拿到sun_flower的真实数据 : 100
通过指针 (快捷方式) 拿到sun_flower的值: 100

自述

  • 不是主学c语言,只是过一遍 , 熟悉一下面向过程语言 , 关于c语言的学习也告知一段落了,后面也会学习一门面向对象语言,准备考试,加油加油加油!!!!!!!!!!

以上笔记内容来源于B站: Micro_Frank

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值