回覆列表
  • 1 # 使用者2873166950085

    *p=*&j。

    int *p=&i已經定義了指標p指向了變數i,也就是p的值是變數i的地址,即*p=i。

    i=*p意思是將指標p所指向的值賦予給i,*p=*&j是指將j的值賦予給指標p所指向的值,而指標p指向了變數i,因為就實現將j的值賦予給i; i=&j是指將變數j的地址賦予給i;*p等於變數i了,因此 i=**p就已經不能滿足實現i=j。

    擴充套件資料:

    特有特點

    1、C語言是一個有結構化程式設計、具有變數作用域(variable scope)以及遞迴功能的過程式語言。

    2、C語言傳遞引數均是以值傳遞(pass by value),另外也可以傳遞指標(a pointer passed by value)。

    3、不同的變數型別可以用結構體(struct)組合在一起。

    4、只有32個保留字(reserved keywords),使變數、函式命名有更多彈性。

    5、部份的變數型別可以轉換,例如整型和字元型變數。

    6、透過指標(pointer),C語言可以容易的對儲存器進行低階控制。

    7、預編譯處理(preprocessor)讓C語言的編譯更具有彈性。

    參考資料:

  • 中秋節和大豐收的關聯?
  • 野球場上遇到打球特獨的隊友是什麼體驗?