zoukankan      html  css  js  c++  java
  • 学习第24天

    C语言

    1. 数组和多为数组、

    2. 指向多维数组的指针和指针变量、

      1. 数组名代表数组的首地址、

      2. int a[3][4];
            	int b, c;
            	for (b = 0;  b< 3; b++)
            	{
            		for (c = 0; c < 4; c++)
            		{
            			a[b][c] = 16;
            		}
            	}
            	int* d;
            	d = (int *)(a + 1);//(int *)是强制转换的意思、指向第一行的首地址、
            	*d = 51;// a[1][0]赋值成51
            	d++;//走4个字节 即a[1][1]
            	*d = 91;//将a[1][1]赋值成91
        
    3. 指针数组和数组指针、

      1. 数组中的每个元素都是个指针、并定义了每个元素的指针变量

      2. 指针数组

      3. int a[3][4];
           		int b, c;
           	for (b = 0; b < 3; b++)
           	{
           		for (c = 0; c < 4; c++)
           		{
           			a[b][c] = 16;
           		}
           	}
           	a[0][3] = 91;
           	int *d[4];
           	d[0] = &a[0][0];
           	d[1] = &a[0][1];
           	d[2] = &a[0][2];
           	d[3] = &a[0][3];
           	for (c = 0; c < 4; c++)
           	{
           		printf("c =%d
        ", *(d[c]));
           	}
        }
        
      4. 数组指针

          	1. 一维数组指针
                    	2. 
        
        int (*d)[4];//一个指针变量、指向含有4个元素的一维数组
        	
        	int a[4];
        	int b, c;
        	for (b = 0; b < 4; b++)
        	{
        		a[b] = b;
        	}
        	d = &a;  //使用地址符& a和&a 的地址相同
        	int* e;
        	e = (int*)d;//(int*)强制转换、
        	for (b = 0; b < 4; b++)
        	{
        		printf("e=%d
        ", *e);
        		e++;
        
        	}
        
        1. 二维数组、

        2.      	int(*d)[9];
               	int a[6][9];
               	int b, c;
               	for ( b = 0; b <6; b++)
               	{
               		for ( c = 0; c < 9; c++)
               		{
               			a[b][c] = b + c;
               		}
               	}
               	d = a;//二维数组可以直接赋值给数组指针、
               	int	*e;
               	e = (int *)d;
               	for(b = 0; b < 6; b++)
               	{
               		for (c = 0; c < 9; c++)
               		{
               			printf("%d    ", *e);
               			e++;
               		}
               		printf("
          --------------------------------
          ");
               	}
               	d++;//跳了40字节
               	e = (int*)d;
               
          

  • 相关阅读:
    贪心 CodeForces 137B Permutation
    贪心 CodeForces 124B Permutations
    数学 SCU 4436 Easy Math
    模拟+贪心 SCU 4445 Right turn
    ACM配置指南
    ACM牛人博客
    ✅问题:Rails.ajax自定义请求
    Jbuilder(3300✨)
    关于keyCode, 键盘代码。 和零散的javascript知识。http://js2.coffee/(转化工具)
    ✅javascript 语法:附加子节点
  • 原文地址:https://www.cnblogs.com/chengyaohui/p/13663680.html
Copyright © 2011-2022 走看看