首页 > 其他 > 详细

C指针入门

时间:2021-01-05 15:02:59      阅读:15      评论:0      收藏:0      [点我收藏+]

C指针入门

1,基本介绍

  • 简单的说,指针表示一个地址(存放的是地址)
#include<stdio.h>

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

2.案例

  • 写一个程序,获取一个int变量num的地址,并显示到终端,将num的地址赋给指针ptr,并通过ptr去修改num的值。
#include <stdio.h>

void main(){
    
    int num = 88;
    int * ptr = &num;
    //先输出num没有修改的情况
    printf("num的值=%d num的地址 = %p ",num,&num);
    *ptr = 99;//通过ptr去修改num的值,num变量的值也就相应的被修改
    printf("num的值 = %d num的地址=%p",num,&num);
    
    int a = 300;
    int b = 400;
    int * ptr = &a;
    *ptr = 100;
    ptr = &b;
    *ptr = 200;
    printf("a = %d,b = %d , *ptr = %d",a,b,*ptr);
    
    getchar();
}

3.指针细节说明

  • 基本类型,都有对应的指针类型:形式为 数据类型 * ,比如int对应的指针就是 int * ,float对应的指针类型就是 float * ,以此类推;
  • 此外还有指向数组的指针、指向结构体的指针、指向共同体的指针(二级指针,多级指针)。

C指针入门

原文:https://www.cnblogs.com/mx-info/p/14235144.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!