回覆列表
-
1 # 愛達人程式設計達人
-
2 # sig2156423107
指標不能按照這個區分,因為C語言裡有typedef可以在指標的形式上把*去掉。比如:
typedef int* pint;
pint p;
p就是一個指標,和普通指標無異。
指標不能按照這個區分,因為C語言裡有typedef可以在指標的形式上把*去掉。比如:
typedef int* pint;
pint p;
p就是一個指標,和普通指標無異。
指標是什麼?很多人說,指標就是地址,那這麼說的人肯定是對指標有所瞭解,他們這麼說也不能說全錯,我只能在這裡說:“他們並沒有真正學會指標,如果想學好指標,請先忘記指標就是地址這句話。”
我們所接觸的資料型別:char、short、int、float、double、陣列、結構體等,資料型別後面加一個星號“*”,該型別與char、short、int、float、double、陣列、結構體等型別一樣,沒有什麼特殊之處。
例如:int* x; int *y;有這兩種寫法。為了程式碼的可讀性,建議大家使用
int* x;這種寫法。這種變數型別叫什麼哪?我們暫且叫帶星號型別,待我們揭開它面紗的那一刻,我會告訴大家它的真實名稱。
那麼肯定會有人問,可以在變數後寫一顆“*”,那可以寫兩顆“*”嗎?可以。那可以寫三顆“*”嗎?可以。那可以寫四顆“*”嗎?可以.那可以寫十顆“*”嗎?可以。具體是什麼含義,請耐心往下看。
我們將帶著如下幾個問題進行學習:【在今後學習其他語言時,一定要帶入以下問題去學習。】
1、帶“*”型別的特徵探測:寬度;
2、帶“*”型別的特徵探測:宣告;
3、帶“*”型別的特徵探測:賦值;
4、帶“*”型別的特徵探測:++ 、--;
5、帶“*”型別的特徵探測:加上/減去 一個整數;
6、帶“*”型別的特徵探測:求差值;
7、帶“*”型別的特徵探測:比較。
【注意:只要我寫的這7個特徵探測裡面沒有的特性,說明帶“*”的變數就沒有該操作。】
對於一個變數來說,最重要的一個特徵就是資料的寬度,請大家思考如何探測某個變數的寬度?