void指针和NULL指针

void指针和NULL指针

  1. void-无类型
  2. void指针
    • 通常把他称为通用指针
#include<stdio.h>
int main(){
        int num=213;
        int *p1=&num;
        char *p2="huang lao ba";
        void *p3;
        p3=p2;
        printf("num=%d\n",num);
        printf("p1=%p\n",p1);
        printf("*p1=%d\n",*p1);
        printf("p2=%p\n",p2);
        printf("*p2=%s\n",p2);
        printf("p3=%p\n",p3);
        printf("*p3=%s\n",(char *)p3);
        return 0;
}
结果:
num=213
p1=0x7ffd86beffc4
*p1=213
p2=0x400680
*p2=huang lao ba
p3=0x400680
*p3=huang lao ba
  1. NULL指针
    • #define NULL ((void *)0)
    • 当你还不清楚要将指针初始化为什么地址时,请将它初始化为NULL,在对指针进行解引用时,先检查该指针是否为NULL。这种策略可以为你今后编写大型程序节省大量的调试时间
    • NULL用于指向一个不被使用的地址
    • '\0’表示字符串的结尾
#include<stdio.h>
int main(){

        int *p1,*p2=NULL;

        printf("%d\n",*p1);
        printf("%d\n",*p2);
    
        return 0;
}
结果:
1
段错误(吐核)
  • 注意 NULL!=NUL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HYT-TYH

欢迎指正指正

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值