zoukankan      html  css  js  c++  java
  • 二级指针的操作及理解、演示

    首先一段代码:

    char a[4] = {1,2,3,4};
    	//int * ptr = a;	//a的地址赋值给ptr
    	char * arr[4];
    	char i = 0;
    	char ** parr = arr;	//arr的地址赋值给parr
    	char * str;
    	
    	*(arr) = a;			//a的地址赋值给arr[0]
    	arr[1] = a + 1;		//a[1]的地址赋值给arr[0]
    	*(arr + 2) = a + 2;
    	*(arr + 3) = a + 3;
    	str = *parr;		//arr[0]的内容赋值给str
    	printf("%d
    ",str[0]);
    
    	str = *(parr+1);		//arr[1]的内容赋值给str
    	printf("%d
    ",str[0]);
    
    	
    	/*
    	parr是指针的指针,char ** parr = arr赋值后,
    	指针变量parr保存的就是数组arr的地址
    	*(parr+i)相当于arr[i],由于arr是指针数组,里面保存的是指针,
    	同时,上面的赋值语句,将数组arr4个变量赋值为数组a每一个元素的地址
    	*/
    	for (i=0; i<4; i++)
    	{
    		str = *(parr+i);//这个语句的意思是打印出数组a的所有数据.
    		printf("%d
    ",*str); //*str=str[0]
    	}
    

    Vc++6.0运行界面如下,调试功能还是不错的,


    具体的信息如下所示:


  • 相关阅读:
    《原则》读书笔记
    mvn + testng + allure 生成自动化测试报告
    poj3264RMQ
    poj3928pingpong区间和
    uva11361数位dp
    Poj2795Exploring PyramidsDp
    uva11137Dp
    uva11375Dp
    三道组合题
    poj1379模拟退火
  • 原文地址:https://www.cnblogs.com/CodeWorkerLiMing/p/12007476.html
Copyright © 2011-2022 走看看