9.3 变量的指针和指向变量的指针变量-2

9.3 变量的指针和指向变量的指针变量-2

1.指针变量作为函数参数

指针变量作为函数参数

函数的参数,可以是指针类型。作用是将一个变量的地址传送到一个函数中去;

#include<stdio.h>
void swap(int *pdest1,int *pdest2)  //2个指针变量作为形参,次数pdest1指向了a,pdest2指向了b
{
    int temp;
    temp = *pdest1;    //*pdest1(pdest1所指向的变量),实际就是a.  temp =a;   temp = 5;
    *pdest1 = *pdest2;  //*pdest2(pdest2所指向的变量),实际就是b.  temp =b;   a= 6;
    *pdest2 = temp;       //b = 5
}

int main()
{
    int a = 5,b = 6;
    int *p1,*p2;


    p1 = &a;//p1指向a
    p2 = &b;//p2指向b
    printf("a = %d,b = %d\n",a,b);


    if(a < b)
    {
        swap(p1,p2);  //2个指针变量作为实参
    }
    printf("a = %d,b = %d\n",a,b);
    return 0;
}

//c语言中,实参变量和形参变量之间数据传递是单向的值传递,指针变量作为函数参数也要遵循这个原则;
//调用函数swap()不能改变实参指针变量的值,也就是说,p1还是指向a,p2还是指向b,但可以改变实参指针变量p1,p2所指向的变量的值。
//也就是说,在swap()函数中,改变了a,b中的值。a,b就是实参变量p1,p2所指向的变量。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

int main()
{
    int *p;//定义整型指针
    *p = 5;//*p代表指针变量p所指向的变量。但p到底指向谁还不确定,所以*P可能会造成某个内存被无意修改,从而使系统崩溃。
    return 0;
}
int main()
{
    int *p;//定义整型指针
    int a;
    p = &a;

    *p = 5;//*p代表指针变量p所指向的变量。但p到底指向谁还不确定,所以*P可能会造成某个内存被无意修改,从而使系统崩溃。
            //a = 5;
    return 0;
}

2.学习网站

整理至https://appd872nnyh9503.pc.xiaoe-tech.com/index的笔记

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值