回覆列表
-
1 # 使用者3096805899034
-
2 #
int*代表的是int型的指標。宣告的變數就叫指標變數。存放地址的變數稱為指標變數。指標變數是一種特殊的變數,不同於一般的變數,變數存放的是資料本身,而指標變數存放的是資料的地址。舉例:int* a = 68 ,系統為變數a分配的首地址為0X065FDF4H,宣告空指標long *p = NULL,p=&a是存放變數a地址的指標變數,即p=&a中存放的值為0x065FDF4H(a的值為68,&a的值為0x065FDF4H)。擴充套件資料對變數a的訪問有兩種方式:一是直接按地址0x065FDF4H找到a的儲存單元,從而對變數a進行訪問;二是按系統為p=&a分配的地址先找到p=&a,然後根據p,&a的值(即變數a地址0x065FDF4H)找到變數a在記憶體中的儲存單元,從而對變數a進行訪問。對於前一種訪問方式稱為直接訪問方式,後一種訪問方式稱為間接訪問方式。如果一個指標變數存放的是某個物件的地址,則稱這個指標變數指向該物件。在C++程式設計中,指標變數只有確定了指向才有意義。
-
3 # 使用者1103529305978749
int*表示定義一個int*型別的變數,即int型的指標變數。
int表示基本的資料型別(整型); *表示指標運算子。舉例如下: int a[]={1,2,3,4,5}; // 定義一個int型別的陣列,包含5個元素int* p2=a; // 定義一個int型別的指標變數p1,指向陣列a的首c語言中int*代表什麼意思 -
4 # 使用者2546089770619275
int*表示定義一個int*型別的變數,即int型的指標變數。
int表示基本的資料型別(整型); *表示指標運算子。
舉例如下: int a[]={1,2,3,4,5}; // 定義一個int型別的陣列,包含5個元素int* p2=a; // 定義一個int型別的指標變數p1,指向陣列a的首c語言中int*代表什麼意思
來自《C和指標》一書int指的是所操作的物件資料型別為int,*指的是間接操作。書上說到,int*和int *雖然意思相同,但前者顯然更加清楚,宣告的是一個型別為int*的指標。用資料型別來理解指標的型別顯然是令人困惑的,舉個例子,對於一個char *p,在32位系統下,指標所儲存的地址是0到2^32-1,是一個四位元組長度的資料,而char則只有一個位元組。