zoukankan      html  css  js  c++  java
  • 双重指针学习笔记

    这是高中信息学竞赛没有仔细学的一个方面,所以这里又补了一下漏。

    直接运行以下代码并且仔细阅读相信你也可以理解指针和二重指针的作用。

    #include<stdio.h>
    int a=10,b=100;
    void njc(int *q){
    	printf("
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	q=&b;
    	printf("
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    }
    void njc2(int **q){
    	printf("
    **q=%d
    *q=%d
    ,q=%d
    ",**q,*q,q);
    	*q=&b;//这里有变化 
    	printf("
    **q=%d
    *q=%d
    ,q=%d
    ",**q,*q,q);
    } 
    int main(){
    	int *q;
    	printf("先查看三个变量的地址
    &a=%d
    &b=%d
    &q=%d
    ",&a,&b,&q);
    	//如果不传入函数直接在外面更改指针的指向
    	printf("如果不传入函数直接在外面更改指针的指向
    
    ");
    	q=&a;
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	q=&b;
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	q=&a;
    	printf("
    发现是可以成功的!!!");
    	//但是如果我们采用这种函数的方式进行更改
    	printf("
    
    但是如果我们采用这种函数的方式进行更改
    
    "); 
    	njc(q);
    	printf("以上为函数输出,以下为主函数输出
    
    ");
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	//发现函数中是成功的,但是主函数中是有问题的
    	//这是因为,编译器要为函数的每个参数制作临时的副本(也叫临时变量),所以上面函数
    	//中的q相当于是主函数中的q的副本,副本的变化是不会影响主函数中的原本的变化的
    	//所以碰到这种问题,我们应该采用二级指针来解决
    	printf("
    
    
    
    
    
    
    
    ");//这里换了很多行
    	printf("如果不传入函数直接在外面更改指针的指向
    
    ");
    	q=&a;
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	q=&b;
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    	q=&a;
    	printf("
    发现是可以成功的!!!");
    	printf("
    
    
    这时我们请上二级指针原来q指向是a=10
    
    "); 
    	njc2(&q);
    	printf("以上为函数输出,以下为主函数输出
    
    ");
    	printf("查看一下
    *q=%d
    q=%d
    &q=%d
    ",*q,q,&q);
    } 
    
    
  • 相关阅读:
    性能测试流程各阶段的工作
    利用jquery插件在客户端计算“过了多少时间”
    服务器×××上的MSDTC不可用解决办法
    SignalR server push 利器
    win8下vs2012中TFS更换用户的问题
    在Share Point 2010 中针对相应用户赋某一个list中的item相关权限
    .NET C#教程初级篇 11 基本数据类型及其存储方式
    新手日记
    shell脚本格式化
    干掉 Postman?测试接口直接生成API文档,ApiPost真香!
  • 原文地址:https://www.cnblogs.com/mudrobot/p/14120669.html
Copyright © 2011-2022 走看看