為什麼定義指標變數時要定義其型別

2021-08-11 19:13:51 字數 2837 閱讀 6641

1樓:

定義型別才可以確定其佔用內容大小並進行相應的操作,如果是物件指標還可以訪問其成員。

2樓:匿名使用者

雖然所有的指標都只佔四個位元組,但不同型別的變數卻佔不同的位元組數。

一般來說,int佔四個位元組,char佔一個位元組.

如果定義指標變數不定義型別,那麼它在取*也就是取其中的值的時候,就不知道應該讀取幾個位元組。

而定義了型別之後。如果是int型的就讀四個位元組,char型的就讀一個位元組。

3樓:永恆_期待

給指標定義了型別,就會給它(地址)分配對應的空間了。例如int型的指標,它指向的數應該是整數。

4樓:匿名使用者

c語言的特點就是先定義再使用,定義指標變數的型別其實是在規定其儲存空間大小。。。所以那是必要的步驟

5樓:

必須得指明這個指標中存放地址所指向的資料的型別呀~~~~

6樓:

不是定義其型別,準確的說是定義它指向的東東的型別。比如一個int資料在記憶體裡佔的位置是4個位元組,那麼定義一個指向int的指標就要指向那4個位元組大小的空間。

就像去賓館開房,你總要跟老闆說要多大的房間,不然他怎麼知道你要多大的。。。總不能把一棟樓都給你吧。。

你不告訴電腦這個指標指向多大一塊的空間,它怎麼指~~

7樓:匿名使用者

定義其型別就是規定了該指標所指向變數的型別

8樓:匿名使用者

因為指標也可以進行運算,如果不知道指標的型別,我怎麼知道你 +1 ,我指著的位置需要向後移動幾個位元組。對於一個型別來說,他在記憶體中存的資料方式各不相同,如果我不知道你的型別,我怎麼知道你這個片記憶體中某個部位到底存放著的是什麼東西?

打個比方來說,我們有一個 student 類,然後有屬性name ,age,id。。如果有這個型別的指標,我就可以通過 student->age獲得這個age了,也就是告訴編譯器,你這片記憶體是這麼存的,不然編譯器怎麼知道 student->age到底是那個部分,記憶體那麼大。一個student也許佔的記憶體也不大,但是編譯器怎麼知道你這個記憶體中前面存的什麼,後面又是什麼,定義一個型別,編譯器就知道了,可以根據你類的成員屬性找到stduent 中 的那一片區域

9樓:陳明

因為這是規定,定義任何變數都要定義型別

10樓:匿名使用者

因為要知道它指向的地址空間存放的是什麼資料就必須定義成什麼型別

為什麼定義指標變數時要定義其型別?

11樓:匿名使用者

雖然所有的指標都只佔四個位元組,但不同型別的變數卻佔不同的位元組數。

一般來說,int佔四個位元組,char佔一個位元組.

如果定義指標變數不定義型別,那麼它在取*也就是取其中的值的時候,就不知道應該讀取幾個位元組。

而定義了型別之後。如果是int型的就讀四個位元組,char型的就讀一個位元組。

為什麼定義指標變數時要定義其型別?

12樓:匿名使用者

雖然所抄有的指標都只襲

佔四個位元組,但不同型別的變數卻佔不同的位元組數。

一般來說,int佔四個位元組,char佔一個位元組.

如果定義指標變數不定義型別,那麼它在取*也就是取其中的值的時候,就不知道應該讀取幾個位元組。

而定義了型別之後。如果是int型的就讀四個位元組,char型的就讀一個位元組。

定義指標變數時必須說明其 ,以確定該指標變數所指向的變數的型別。

13樓:i_冰

定義指標變數時必須說明其 (型別),以確定該指標變數所指向的變數的型別

《因為回同種型別答的指標指向同種變數的地址啊 , 指標其實就相當於陣列 ,

你想想 (就像人總不能住鳥兒的喔,豬仔總不能說它會建樓房啊)所以 整形陣列能裝的肯定是整形值 字元型裝的是字元型的 這樣講你應該懂點了吧 我也是菜鳥懂得不多,想給你多講點怕講錯, ··· 》

希望你能理解啊

14樓:醋溜_白菜

值。變數的型別是通過值的使用方法隱式的確定的。

15樓:沼澤

填空?型別。c 教材上有吧,應該指標開頭就有講,看看書吧……

c語言中,定義指標時為什麼前面是型別?

16樓:

int i = 2;//普通整型變數

int *p = &i;//定義同時初始化, 把i的地址賦給p等價於:

int *p;//宣告指標變數p

p = &i;//把i的地址賦給p

詳細說明:

int *p;中,

int * --> 指標變數p的型別.

int --> 指標變數p指向的型別.

* --> 定義指標變數的識別符號, 另外也是指標的一個操作符,即,取地址值.

記住: 指標也是變數, 只不過它的值是另外一個變數的地址, 而在定義時要在指標名前加*號以區別於普通變數, 注意,定義或者宣告指標變數時指標名前的*號一定不能少!

17樓:斯摩伊

那是因為需要知道你的指標是拿來怎麼用,

你定義的指標是需要指向什麼樣的資料。

定義指標變數時必須說明其() ,以確定該指標變數所指向的變數的型別。

18樓:匿名使用者

填「資料型別」,「資料型別」規定了指標變數所指向的資料型別

c定義變數時在後面加個什麼意思,C語言中定義變數時在變數前面加2個星號是什麼意思

引用的意思。就相當於你定義的int 變數n,給他取了個別名m na,編譯時不為變數m na分配記憶體單元。這樣做的好處是顯而易見的,特別是搞開發,引用,比如 b a 就是說b是a的引用,引用最大的特點就是在修改b的時候 a也被修改 引用 具體的請參考相關教材 引用,就是別名的意思,打個比方來說,有個...

c語言用指標方式定義的字串為什麼不能修改

123 本身預設的就是一個字串常量,他的值不容修改,p只是一個指標,執行該字串的首地址,對該地址的值指向的地址空間的值的改變也是不允許的。我也是今天在想這個宣告模式跟char p 123 之間的區別時琢磨的。二維陣列int a i j 當把二維陣列看成一維陣列時宣告指標變數是這樣宣告的 int p ...

為什麼用access設計資料庫時候要定義個ID(自動編號)

id一般是bai作為主鍵的,是一條數 據的du唯一編號 刪除或更新zhi資料的時候是以daoid作為依據的就像你內學號在你的學校容中是唯一的一樣 建議 看一下關係型資料庫的定義 可以不定義,但是不能保證你的資料中不出現重複的資料而且在對資料庫進行操作的時候會比較困難 雖然你沒有定義id欄位,但是你同...