1. 程式人生 > >C語言中訪問結構體成員時 點 . 和 箭頭 -> 的區別

C語言中訪問結構體成員時 點 . 和 箭頭 -> 的區別

    點(.)是用於結構體變數訪問成員,箭頭(->)是用於結構體指標訪問成員。

   例如:

#include <stdio.h>

int main(void) {
    struct Smy {
      	int a;
    };
    
    struct Smy test;
    struct Smy * pt;
    test.a = 1;
    pt = &test;
       
    printf("%d\n", test.a);
    printf("%d\n", pt->a);

}

###############################

    C語言中#include 後面跟的 雙引號("")與尖括號(<>)的不同之處在於:

         ""雙引號表明編譯時先從專案的原始碼檔案中查詢該檔案,如果找不到再從系統檔案中查詢。

         <>尖括號表明編譯時先從系統檔案中查詢該檔案,若沒有再查詢專案的原始碼檔案。


相關推薦

C語言訪問結構成員 . 箭頭 -> 的區別

    點(.)是用於結構體變數訪問成員,箭頭(->)是用於結構體指標訪問成員。    例如: #include <stdio.h> int main(void) { struct Smy { int a; };

C語言:存取結構成員運算子(.)箭頭運算子(->)的區別

一直以為這兩個是沒有什麼區別的,可以相互替換,今天又翻了一下《C語言核心技術》,明白了其中的奧妙。 相同點:兩個都是二元操作符,其右操作符是成員的名稱。 不同點:點操作符左邊的運算元是一個“結果為結構”的表示式; 箭頭操作符左邊的運算元是

C 語言結構(資料結構

結構體是在資料結構中經常使用的一類,下面對結構體進行一些知識的補充 結構體和陣列的區別 結構體的宣告 結構體宣告的基本形式 struct tag { member-list }variable-list; 引數解釋 tag:結構體的名字

C語言結構

這篇部落格我想將一下C語言中的結構體。 對於結構體的概念性問題這裡博主不再過多闡述,我們還是用程式碼說話。 //結構體的語法 這是C語言中的規則 struct 結構體名{ 型別名 變數名 }; //我們可以寫一個簡單的結構體 struct STUDENT{ char n

C語言結構C++的類異同

從C語言到C++,是程式設計思想的進步,技術發展的結果吧,所以C++基本上是相容C的語法的,C++的很多東西也是從C中繼承過來的,然後再發揚,C語言的結構體便是C++中類的雛形。         簡單的一句話,C語言中的結構體是C++中類的祖先,也可以說C++中的類是C語

淺談 C 語言結構【struct】與聯合體【union】

## C語言中結構 struct 與聯合 union 語法基本一致,如下以 struct 為例 一、struct 的基本用法 struct student {     int num;     char* sex; &nbs

C語言結構------>C語言的實體

C語言中的結構體——>C語言的實體 1.結構體概念 2. 結構體宣告 3. 結構體定義 5. 結構體變數成員的引用 6. 結構體變數的賦值 7. 結構體變數的初始化 8. 結構體的巢狀 結構體的概念: C語言中引入了一種構

C 語言結構共用(聯合體)

本文主要總結了譚浩強主編的《C 程式設計》教材中結構體和共用體相關章節的內容。 在 C 語言中, 結構體(struct) 是一個或多個變數的集合,這些變數可能為不同的型別,為了處理的方便而將這些變數組織在一個名字之下。由於結構體將一組相關變數看作一個單元而不是各自獨立的實體,因此結構體有助於組織複雜的資料,

C語言結構與面向物件程式設計思想

沒有萬能的程式設計技術 沒有隻產生正確的結果的程式語言 不是每個專案的程式設計都是從零開始的 —-《Object-Oriented Programming With ANSI-C》 一、C語言結構體 1、結構體是什麼 (1

C語言處理結構的原理

彙編中有幾種定址方式,分別是直接定址:(ds:[idata])、暫存器間接定址(ds:[bx])、暫存器相對定址(ds:[bx + idata]、ds:[bx + si])基址變址定址(ds:[bx + si])、相對基址變址定址([bx + si + idat

C語言】用結構陣列指標完成:有三個學生資訊,存放在結構陣列,要求輸出全部資訊

//用結構體陣列指標完成:有三個學生資訊,存放在結構體陣列中,要求輸出全部資訊 #include <stdio.h> struct Stu { int num; char name[2

C語言利用共用結構、位域實現位操作

編寫過51(MCU)程式的同學都知道51架構的MCU支援位操作,這是一個很方便的特性,在讀取/修改暫存器某位的值時非常方便快捷。但其他架構的MCU大多都不支援該特性,即不支援位操作,所在在對暫存器中某一位進行操作的時候都是and/or兩個操作共同使用,在編寫程式時非常麻煩。

c語言學習筆記.結構.

成員訪問運算符 div 成員 bsp tro truct 年齡 可用 語言學 結構體:   一種用戶自定義的可用的數據類型,它允許您存儲不同類型的數據項。 定義/聲明: struct 類型名{ 成員1; 成員2; ... 成員n; } 變量

C語言語法教程-結構

再次 staf har 語言 指向 取出 但是 進行 字符數 2018-09-30 結構體中成員變量地址是連續的,結構體用於描述記錄。 Create a struct //---------------------------- //struct1.c //創建一個結構體,

C語言:利用結構的學生成績

結構體-學生成績管理 題目:有50個學生,每個學生的資料包括學號、姓名、3門課的成績,從鍵盤輸入50個學生資料,要求打印出每門課的平均成績,以及三門課總分最高的學生的資料(包括學號、姓名、3門課的成績,三門課的總分)。 #include<stdio.h> #define

c語言typedef 與結構指標

轉載部落格:https://blog.csdn.net/developerof/article/details/24885205?utm_source=blogxgwz0  #include<stdio.h> #include<

C語言基礎知識——結構

1、C語言中提供了一些由系統已經定義好的資料型別,如:int,float,char等,使用者可以在程式中用它們定義變數,解決一般的問題,但人們要處理的問題往往比較複雜,只有系統提供的型別還不能滿足應用的要求,C語言允許使用者根據需要自己建立一些資料型別,用它來定義變數。 2、C語言允許使

C語言什麼是結構?初步學習C語言結構三部曲

閱讀須知: 結構體部分內容,涉及結構體定義,結構體變數,結構體指標,結構體陣列,更多內容敬請關注。 結構體是由若干個"成員"組成的,每一個成員要有成員名稱和型別,成員可以是基本資料型別或者一個結構體。一旦定義結構體型別,使用它的方式和其他型別一樣,可以宣告這個結構體的

C語言結構體內嵌函式

1.內嵌函式定義舉例:經過真實測試         在函式中宣告定義結構體 #include "fun_in_struct.h"int main(int argc, char **argv) { //定義結構體指標或者結構體變數,分別用->和

C語言學習筆記——結構與共同體

一.資料型別 1.基本資料型別:char、int、short、long、float; 2.指標型別:char*、int*、short*; 3.構造型別:char[ ]、int[ ]、short[ ]; 二.用typedef說明一個新型別 typedef是C語言一