• 專注電子技術學習與研究
    當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

    C語言中針的用法

    作者:huqin   來源:本站原創   點擊數:  更新時間:2014年05月01日   【字體:

     說起他的都是廢話;直接上例子講解。

    void max_min(array1)
    int array1[10];
    {
    int *max,*min;  //-----------(1)  定義了兩個指針變量 max,min
    int k,l;
    int *p,*end_p;
    end_p=array1+10; //-----------(2) 數組array1[0]地址+10作為一個新地址賦給 end_p 這個指針
    max= array1;     //-----------(3) 將array1[0]的地址位賦給 max,將max的指針指向 array1數組。
    min= array1;
    for (p=array1+1;p p++  是指針所綁定的地址加 1,即指針指向和原來相鄰的一個變量
    {
     
     if (*p>*max)  max=p;        //-----------(4) 將指針p和指針max所指的變量的值進行比較,將比較大的那個變量的地址賦給 max這個指針,即指針max始終指向一個大的數據


     if (*p<*min)  min=p;
    }

    k=*max;                      //-----------(5)將指針max所指向的變量的值賦給k
    *max=array1[0];array1[0]=k;  //-----------(6)  將array1[0]的值賦給指針max所指向的變量
    l=*min; 
    *min=array1[9];array1[9]=l;
    return;  
    }

    PS: max=&array1[0],是將array1[0]的地址賦給指針max

    關閉窗口

    相關文章

    亚洲一区二区制服在线|在绩专区欧美自拍日韩|青春娱乐网97超碰人人射|在线观看国产网址你懂的