C 指標:何時攜帶和何時不攜帶 40

發布 汽車 2024-03-02
22個回答
  1. 匿名使用者2024-02-06

    帶有 *.

    1.宣告時,需要使用 * 來指示宣告的物件是指標。 例如:int*p;

    2.使用指標的值時。 例如:printf("p = %d",*p);

    3.將值賦給指標時。 *p = 5;

    沒有*:

    1.使用指標時。 例如:int a = 0; p = &a;(p 為 int*)。

  2. 匿名使用者2024-02-05

    同學:這個你記不下來,你要明白。

    儲存在記憶體位址中(由 *)指示的值。

    缺少 * 表示該記憶體的位址。

    int *p,a;p 是指標,a 是整數。

    int *p,*a;p 是指標,A 也是指標。

    int *p=&a 等價 int *p; p=&a;

  3. 匿名使用者2024-02-04

    如果要使用指標的內容,即儲存在儲存指標變數的記憶體位址中的變數,則需要新增 *。 另一方面,當你需要使用指標變數本身,也就是這個位址時,你不需要新增*。

  4. 匿名使用者2024-02-03

    例如int *p,表示p是int型別的指標,如果要輸出函式中p指標指向的值,則需要將*(如a=*p)放入,而不用*表示指標本身,如int *p,*p1,p=p1表示p1指標指向的記憶體位址分配給p指標, 沒有*

  5. 匿名使用者2024-02-02

    指標儲存位址,可以操作它指向不同的資料,當要修改或複製指標p指向的資料時,使用(*p)訪問指標指向的資料;

    當要將指標 p 指向另一段資料時,即修改儲存在 p 中的位址時,使用 p 進行計算。

  6. 匿名使用者2024-02-01

    int* p;

    int* 是指標的型別;

    p 是指標位址;

    p 是 p 指向位址的值;

    不要死記硬背,死記硬背從來都不是你的。

  7. 匿名使用者2024-01-31

    使用 * 檢索指標指向的位址中的記憶體,而不是引用指標指向的位址。

  8. 匿名使用者2024-01-30

    由於指標通過位址傳遞引數,因此在沒有指標的情況下,它們傳遞速度很慢。

    在沒有C++語言的時代,沒有物件導向、面向模板的語法支援,函式無法在結構中定義,而C語言想要抽象業務函式(algorithm,這裡稱為函式),不想依賴特定的資料結構資料型別,此時, 需要使用指向函式的指標來實現抽象和具體的分離,並且函式的輸入引數可以是 void*,以便呼叫者可以傳入任何型別的引數。後來,在C++中,使用了類成員函式和泛型(模板+函子),它們具有更強的靜態型別檢查機制和程式設計約束,這有助於降低濫用的風險。

    函式指標的乙個典型應用是實現**,因為此時具體的函式定義是未知的,事件是呼叫並確定何時發生的; 類似於物件導向中的“多型性”+設計模式中的“觀察者模式”,**的本質仍然是抽象。

  9. 匿名使用者2024-01-29

    表示選擇結構的成員變數的成員選擇(指標)。

    1、結構簡單:運算子->是指向結構構件的運算子,繫結方向從左到右。

    2. 用法:物件指標 - >成員名稱。

    以下是一些示例:

  10. 匿名使用者2024-01-28

    在 C 語言中,指標是儲存記憶體位址的特殊變數。 此位址可以指向特定資料物件(如變數、陣列、結構體等)在記憶體中的位置。

    使用指標的能力允許程式在執行時動態訪問和修改記憶體中的資料,這是 C 語言的特徵之一,也是它被廣泛使用的原因之一。

    在 C 語言中,指標使用星號 (*) 進行宣告和操作。 例如,下面是乙個指標變數示例,該示例將指標變數宣告為整數型別:

    arduinocopy codeint *p;

    此語句宣告乙個名為“p”的指標變數,該變數可以指向整數型別的資料。 若要訪問垂直指標指向的記憶體中的資料,可以使用位址字元 (&) 將變數的位址分配給指標變數,也可以將已知位址直接分配給指標變數。 例如:

    arduinocopy codeint x = 10;

    p = x;將 x 的位址分配給 p

    或者: arduinocopy codeint *p = int *)0x12345678;將位址0x12345678分配給 P

    若要訪問指標指向的資料,可以使用取消引用 (*) 取出指標指向的記憶體中的值。 例如:

    arduinocopy codeint y = p;從指標 p 指向的位址中獲取乙個整數值,並將其分配給 y

    還可以新增和減去指標以移動指標在記憶體中的位置。 例如:

    csscopy codep++;將指標 p 向後移動整數型別的森林覆蓋長度 p--; 將指標 p 向前移動整數型別的長度。

    指標的使用需要一些細節,比如指標的型別匹配、指標空指標的處理等,否則可能會導致程式崩潰或出現疑難錯誤。 因此,使用指標時需要非常小心。

  11. 匿名使用者2024-01-27

    1.您可以隨時使用指標,因為它們比變數更有效。

    3.在操作陣列時,使用指標不僅更方便,而且非常省時。

    4.處理檔案時,如果沒有指標,很難移動。

    5.指標簡化了編寫函式呼叫的過程,並使源易於閱讀。

    這不是乙個詞。

  12. 匿名使用者2024-01-26

    建議您先閱讀程式,並按照理解學習。

  13. 匿名使用者2024-01-25

    建議您不要糾結何時使用指標。 相反,目標是理解和學習:指標的本質是什麼。

  14. 匿名使用者2024-01-24

    由於指標通過位址傳遞引數,因此在沒有指標的情況下,它們傳遞速度很慢。

    在沒有C++語言的時代,沒有物件導向、面向模板的語法支援,函式無法在結構中定義,而C語言想要抽象業務函式(algorithm,這裡稱為函式),不想依賴特定的資料結構資料型別,此時, 需要使用指向函式的指標來實現抽象和具體的分離,並且函式的輸入引數可以是 void*,以便呼叫者可以傳入任何型別的引數。後來,在C++中,使用了類成員函式和泛型(模板+函子),它們具有更強的靜態型別檢查機制和程式設計約束,這有助於降低濫用的風險。

    函式指標的乙個典型應用是實現**,因為此時具體的函式定義是未知的,事件是呼叫並確定何時發生的; 類似於物件導向中的“多型性”+設計模式中的“觀察者模式”,**的本質仍然是抽象。

  15. 匿名使用者2024-01-23

    它可以在許多情況下使用。 這需要在程式設計過程中形成一種思維方式。

    例如,將結構傳遞給函式。

    如果不使用指標,則傳輸速度較慢,如果傳遞指標,則只需傳遞位址即可。

    struct example

    void main()

    fun(struct example *p)

  16. 匿名使用者2024-01-22

    指標通過位址傳遞引數,位址可以在兩個方向上傳遞值。

    如果你是電腦科學專業的學生,請閱讀“高階語言程式設計”,了解兩者之間差異的詳細說明,以及程式比較(兩個數字交換的函式)。 我很懶,你要靠自己。

  17. 匿名使用者2024-01-21

    指標可以被認為是一張紙條,上面寫著變數或函式的入口點的位址或結構體的具體位置,如果將記憶體比作建築物,則注釋寫在樓層和房間的數量上。 指標的使用意味著你可以根據筆記上的位址找到對應的房間,並取出房間的內容,做你需要的事情。

    使用指標的情況有很多,最常見的是被呼叫的函式返回多個引數; 它將用於製作各種鍊表; 將使用對 struct 成員的訪問; 將使用手動動態分配記憶體使用量; 會用到一些特定的結構變數型別(比如file),特意使用指標來提高程式執行的效率(包括很多情況,就不贅述了); 依此類推。

    需要注意的事情很多,很難完成,但常見的有以下幾點(我能想到):

    1.指標變數和普通變數的概念以一種混淆的方式使用。

    2.指標變數的賦值方式錯誤(初始化,傳遞位址)3指標變數的型別與引用元素的型別不匹配。

    4.指標未正確移動。

    5.指標在使用過程中被不必要地更改,導致錯誤6還有很多其他情況,多個指標指向指標,導致形成難以理清的邏輯關係,在不同的使用環境中,指標會產生一些需要注意的具體問題; 歸根結底,C 指標是如此靈活,以至於它們可以做很多事情,代價是問題的原因也非常靈活,幾乎不可能將它們全部列出。

    希望對你有所幫助。

  18. 匿名使用者2024-01-20

    說實話,C語言的本質就是指標,沒人能幫你解決這個問題,去讀書吧。

    推薦的《C和指標》詳細講解,自學難度有點大,這是大一課程,你呢? 它

  19. 匿名使用者2024-01-19

    個人理解。

    指標是乙個位址,但是這個位址有乙個型別,比如int指標,int指的是指標指向的記憶體內容是int型別的資料。

    或者您可以簡單地將指標的型別視為指標可以管理的記憶體大小,例如,int 指標可以管理 4 個位元組,char 型別可以管理 1 個位元組。

  20. 匿名使用者2024-01-18

    它是資料的位址。 指標可用於將資料寫入此位址或讀取資料。 p 是位址,*p 是位址的內容。

  21. 匿名使用者2024-01-17

    C 指標是記憶體位址。 既然是記憶體位址,當然可以用它來訪問記憶體。 因此,當您想要讀取、寫入、分配和釋放記憶體時,會使用它。

    您甚至可以使用函式指標來訪問函式。 要注意的事情一時不能說,這需要用自己的實踐來總結。

  22. 匿名使用者2024-01-16

    其實與其在這裡問,不如看一下C語言教科書,裡面寫得很詳細。

    以下是譚浩強的版本。

    在計算機中,所有資料都儲存在記憶體中。 通常,記憶體中的乙個位元組稱為記憶體單元,不同資料型別所占用的記憶體單元數是不同的,例如整數數占2個單位,字元數占1個單位等,前面已經詳細描述過了。 為了正確訪問這些儲存單元,必須對每個儲存單元進行編號。

    記憶單元可以通過其編號準確定位。 儲存單元的編號也稱為位址。

    由於您可以通過其編號或位址找到所需的儲存單元,因此通常將此位址稱為指標。

    記憶單元的指標和記憶單元的內容是兩個不同的概念。

    乙個外行的例子可以用來說明它們之間的關係。 當我們去銀行存取款時,銀行工作人員會根據我們的賬號查詢我們的存款單,然後在存款單上寫下存款和取款金額。 這裡,賬號是存款證的指標,存款數是存款證的內容。 對於儲存單元,單元的位址是指標,儲存在其中的資料是單元的內容。 在 C 語言中,允許將指標儲存在變數中,這稱為指標變數。

    因此,指標變數的值是記憶單元的位址,或稱為記憶單元的指標。

    嚴格來說,指標是乙個位址,乙個常量。 可以為指標變數指定不同的指標值,該指標值是變數。 但是,指標變數通常簡稱為指標。

    為了避免混淆,我們同意“指標”是指位址並且是乙個常量,而“指標變數”是指其值為位址的變數。 定義指標的目的是通過指標訪問儲存單元。

    由於指標變數的值是位址,因此它不僅可以是變數的位址,還可以是其他資料結構的位址。 將陣列或函式的第乙個位址保留在指標變數中有什麼意義?

    這是因為陣列或函式是連續儲存的。 陣列或函式的第乙個位址是通過訪問指標變數獲得的,並找到該陣列或函式。 這樣,無論陣列或函式出現在哪裡,只要在指標變數中給出陣列或函式的第乙個位址,它就可以用指標變數表示。

    這樣一來,程式的概念就會非常清晰,程式本身也會簡潔高效。 在 C 語言中,資料型別或資料結構通常占用一組連續的記憶體單元。

    “位址”的概念並沒有很好地描述一種資料型別或資料結構,而“指標”雖然實際上是乙個位址,但它是資料結構的第乙個位址,它是“指向”乙個資料結構,所以概念更清晰,表示更明確。

    這也是引入“指標”概念的重要原因。

相關回答
8個回答2024-03-02

它是子函式的返回值,main 函式也有返回值,但一般不使用和忽略。 >>>More

6個回答2024-03-02

定義結構:

typedef struct _legaladdress_{ >>>More

13個回答2024-03-02

晚上10點上床睡覺最晚但超過11點,美容睡眠的最佳時間是從晚上10點到半夜2點,這個時間段身體的各種功能開始進行相應的排毒活動,晚上是我們新陳代謝最旺盛的時間, 我們必須利用這段時間來達到睡眠美容的效果。

26個回答2024-03-02

這些都是熟練程度的問題,首先你要了解你的英雄的技能,對面英雄的技能,你是否會被擊暈過去,你能不能殺人,能不能控制,能不能活著回來。 也就是說,在你衝過去之前,你要知道一點衝過來的後果,半路殺也沒什麼好說的。 知道你能造成多大的傷害,你能給隊友多少幫助,取決於你在遊戲中的表現。 >>>More

7個回答2024-03-02

農曆男1984年9月23日,女1985年12月16日。

這個月是你們倆結婚的吉月——太好了,沒有反對你! >>>More