zoukankan      html  css  js  c++  java
  • C二维数组用指针地址遍历

    #include <stdio.h>
    #include <stdlib.h>
    int main(){
    	int a = 100;
    	void *p = &a;
    	printf("a:%d address:%p
    ",*(int*)p, &a);
    	//unsigned int *pt = (unsigned int*)0xbfa70ee8;
    	int *pt = (int*)malloc(sizeof(int));
    	*pt = 200;
    	printf("ptv:%p v:%d
    ",pt,*pt);
    	
    	printf("********************行指针遍历二维数组*************************
    ");
    
    	//二维数组的指针地址
    	int fa[3][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}};
    	//行指针指针遍历输出二维数组
    	int i,j;
    	for(i=0;i<3;i++)
    	{
    		for(j=0;j<4;j++){
    			printf("fa[%d][%d]=%d %p
    ",i,j, *(*(fa+i)+j),*(fa+i)+j);
    		}
    	}
    	printf("******************用数组名 列指针遍历二维数组***************************
    ");
    	//定义指针
    	int *col = fa[0];//col是某行某列的指针 把第一行地址赋值给指针col
    	for(;col<fa[0]+12; col++){
    		//地址每次循环+1指向下一行一列
    		if( (col-fa[0])%4==0 ){
    			printf("
    ");	
    		}	
    		printf("%d ", *col);
    	}
    	printf("******************用指针 列指针遍历二维数组***************************
    ");
    	int *pp = *fa;
    	int *arr = *fa;//二维数组首地址等同于 int *arr = fa[0]
    	for(;arr<pp+12; arr++){
    		//地址每次循环+1指向下一行一列
    		if( (arr-pp)%4 == 0 ){
    			printf("
    ");	
    		}	
    		printf("%d ", *arr);
    	}
    
    	
    	return 0;
    	
    }
    

      

  • 相关阅读:
    mongodb 简单的更新语句
    centos 安装ffmpeg 及h264编码打包
    mongodb $where查询
    javascript 上传进度条
    javascript 仿豆瓣读书笔记
    js监听浏览器剪贴板
    ffmpeg相关操作
    ffmpeg未整理好,有时间整理下
    fffmpeg 提取pcm
    ffmpeg转MP4 moov头在前命令
  • 原文地址:https://www.cnblogs.com/wanglijun/p/8586337.html
Copyright © 2011-2022 走看看