欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于結(jié)構(gòu)體與指針的詳解

 更新時間:2013年05月16日 12:16:35   作者:  
本篇文章是對結(jié)構(gòu)體與指針進行了詳細的分析介紹,需要的朋友參考下
結(jié)構(gòu)指針變量:結(jié)構(gòu)指針變量的說明和使用一個指針變量用來指向一個結(jié)構(gòu)變量
結(jié)構(gòu)指針變量中的值是所指向的結(jié)構(gòu)變量的首地址。通過結(jié)構(gòu)指針即可訪問該結(jié)構(gòu)變量,這與數(shù)組元素的指針和函數(shù)指針的情況是相同的。
結(jié)構(gòu)指針變量說明的一般形式為:
struct 結(jié)構(gòu)名 * 結(jié)構(gòu)指針變量名
例如: struct stu *pstu; 
其訪問的一般形式為:
(*結(jié)構(gòu)指針變量).成員名 : (*pstu).num
或為:
結(jié)構(gòu)指針變量->成員名  :pstu->num
應(yīng)該注意(*pstu)兩側(cè)的括號不可少, 因為成員符“.”的優(yōu)先級高于“*”。如去掉括號寫作*pstu.num則等效于*(pstu.num),這樣,意義就完全不對了。 
結(jié)構(gòu)變量.成員名
(*結(jié)構(gòu)指針變量).成員名
結(jié)構(gòu)指針變量->成員名
這三種用于表示結(jié)構(gòu)成員的形式是完全等效的。
結(jié)構(gòu)數(shù)組指針變量:結(jié)構(gòu)指針變量可以指向一個結(jié)構(gòu)數(shù)組, 這時結(jié)構(gòu)指針變量的值是整個結(jié)構(gòu)數(shù)組的首地址。 結(jié)構(gòu)指針變量也可指向結(jié)構(gòu)數(shù)組的一個元素,這時結(jié)構(gòu)指針變量的值是該結(jié)構(gòu)數(shù)組元素的首地址。
設(shè)ps為指向結(jié)構(gòu)數(shù)組的指針變量,則ps也指向該結(jié)構(gòu)數(shù)組的0號元素,ps+1指向1號元素,ps+i則指向i號元素。 這與普通數(shù)組的情況是一致的。
復(fù)制代碼 代碼如下:

#include <stdio.h>
int main(void)
{
    int i;
    struct student
    {
        long int num;
        int      age;
        char*    name;
    }st[3]={{198,19,"zhangsan"}, {199,18,"lisi"},{200,19,"wangwu"}};  
    struct student*   p;
    p=st;
    printf("/n/n    NO.    age    name   /n");
    for(  ;p<=st+2;p++)
        printf("  %ld    %d   %s/n",p->num,p->age,p->name);
    getch();
    printf("/n/n    NO.    age    name   /n");
    for( p=st ;p<=st+2;p++)
       printf("  %ld    %d   %s/n",(*p).num,(*p).age,(*p).name);
    getch();
    return 0;
}

相關(guān)文章

  • 怎么通過C語言自動生成MAC地址

    怎么通過C語言自動生成MAC地址

    以下是對使用C語言自動生成MAC地址的實現(xiàn)代碼進行了詳細的分析介紹,需要的朋友可以過來參考下
    2013-09-09
  • C++使用curl庫進行http請求的方法詳解

    C++使用curl庫進行http請求的方法詳解

    這篇文章主要為大家詳細介紹了C++如何使用curl庫進行http請求,并且實現(xiàn)獲取返回的頭信息的時間,也就是獲取后臺服務(wù)的當(dāng)前時間,感興趣的可以了解一下
    2023-07-07
  • C++使用JsonCpp庫操作json格式數(shù)據(jù)示例

    C++使用JsonCpp庫操作json格式數(shù)據(jù)示例

    這篇文章主要介紹了C++使用JsonCpp庫操作json格式數(shù)據(jù),結(jié)合實例形式詳細分析了JsonCpp庫的下載及C++使用JsonCpp庫對json格式數(shù)據(jù)序列化相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • C++ find函數(shù)及用法小結(jié)

    C++ find函數(shù)及用法小結(jié)

    string類的find()函數(shù)用于在字符串中查找字符或子串,返回第一個匹配的位置,C++中的find()函數(shù)有多種用法,本文通過實例代碼給大家詳細講解,感興趣的朋友一起看看吧
    2023-12-12
  • C/C++中的sizeof運算符和size_t類型的詳解

    C/C++中的sizeof運算符和size_t類型的詳解

    今天小編就為大家分享一篇關(guān)于C/C++中的sizeof運算符和size_t類型的詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • C語言模擬內(nèi)存函數(shù)分析之mencpy與memmove

    C語言模擬內(nèi)存函數(shù)分析之mencpy與memmove

    這篇文章主要介紹了C語言詳解如何模擬內(nèi)存函數(shù),用到了mencpy與memmove兩個函數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • C++ CryptoPP使用AES實現(xiàn)加解密詳解

    C++ CryptoPP使用AES實現(xiàn)加解密詳解

    Crypto++ (CryptoPP) 是一個用于密碼學(xué)和加密的 C++ 庫,提供了大量的密碼學(xué)算法和功能,這篇文章主要為大家介紹了C++ CryptoPP如何使用AES實現(xiàn)加解密,需要的可以參考下
    2023-11-11
  • C++利用libcurl獲取下載文件名稱及大小

    C++利用libcurl獲取下載文件名稱及大小

    這篇文章主要為大家詳細介紹了C++如何利用libcurl獲取下載文件名稱及大小的功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-03-03
  • C語言實現(xiàn)停車管理系統(tǒng)

    C語言實現(xiàn)停車管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)停車管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • VSCode C/C++多文件編譯配置小結(jié)

    VSCode C/C++多文件編譯配置小結(jié)

    本文主要介紹了VSCode C/C++多文件編譯配置小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08

最新評論