zoukankan      html  css  js  c++  java
  • 两个数组拼合且有序,指针部分总结。

    #include <stdio.h>
    #include <stdlib.h>
    
    #define M 7
    #define N 3
    
    int main()
    {
        int a[M]={1,3,5,7,9,11,20};
        int b[N]={2,6,8};
        int c[M+N]={0};
    
        int i=0; //a的下标
        int j=0; //b的下标
        int zu_he=0; //组合下标
    
        while(i<M&&j<N)
        {    
            //谁小谁谁放进去自身并且增加
            if(b[j]<a[i])
            {
                c[zu_he++]=b[j++]; 
            }
    
            else
            {
                c[zu_he++]=a[i++];
            }
            
        }
    
        //谁先跳出来,另一个就继续接力
        if(i == M)
            while(j < N)
                c[zu_he++]=b[j++];
    
        if(j == N)
            while(i < M)
                c[zu_he++]=a[i++];
    
        for(int i=0;i<M+N;i++)
            printf("%d
    ",c[i]);
        system("pause");
    }

    //数组int array[4][3] array+1加了16个字节(int[3] array[4]) array[1]+1加了4个字节(
    *(array+1)+1)
    ) /*指针部分总结*/ //内存是以字节为单位进行编址的,不是以位(bit) //&--reference 引用/取地址符,取出的地址是有类型的 如int a &a==(int*)(0x a的十六进制代码) //指针的本质有类型的地址 /* 1、大小端是不同的对于数据在内存地址中的存放方式,不同的处理器(平台)的数据存储方式是不同。的如果 实现跨平台通信则大小端是不能忽视的问题。 大端模式:数据的高位存储在内存的低字节。ARM/PowerPC等处理器采用大端模式 小端模式:数据的地位存储在内存的低字节。Intel架构处理器采用小端模式。 如一个数据:0x12345678;对应内存地址是0x00~0x03。 大端模式 小端模式 地址:0x00 0x01 0x02 0x03 地址:0x00 0x01 0x02 0x03 数据:0x12 0x34 0x56 0x78 数据:0x78 0x56 0x34 0x12 */
  • 相关阅读:
    【编译原理】文法解析算法以及左递归消除算法
    【编译原理】 DFA词法分析和递归下降语法分析代码
    编译原理 第三章 词法分析(下)
    详解KMP算法
    编译原理 第三章 词法分析(上)
    ExtJs4.0入门错误
    致好友的一封信
    解析Xml四种方法
    Spring AOP实现原理
    Spring Ioc知识整理
  • 原文地址:https://www.cnblogs.com/huxiaobai/p/10429403.html
Copyright © 2011-2022 走看看