淺析char 指針變量char *=p 這個語句的輸入成績。本站提示廣大學習愛好者:(淺析char 指針變量char *=p 這個語句的輸入成績)文章只能為提供參考,不一定能成為您想要的結果。以下是淺析char 指針變量char *=p 這個語句的輸入成績正文
進修指針的時刻我一向有個困惑,請看上面的代碼:
#include <iostream> using std::cout; void main() { int num=5; int *nPtr=# cout<<nPtr;//輸入指針的地址。然則會報錯<<沒有直接輸入int *地址的功效 return ; }
然則,將int 改成char 類型就不會報錯,可以輸入字符串。異樣是指針,此次為什麼沒有輸入地址(理應輸入指針代表的地址,然則<<並沒有重載地址輸入的功效所以報錯)呢?
#include <iostream> using std::cout; void main() { char *nPtr="Address"; cout<<nPtr;//輸入字符串Address; return ; }
本來,輸入流運算符<<重載了輸入功效,可以主動斷定類型,int直接輸入,char *就輸入所代表的字符串,假如要輸入地址,必需應用強迫類型轉換函數static_cast轉換成十六進制數字,其它類型的指針好比int *double *直接輸入會報錯
#include <iostream> using std::cout; void main() { char *nPtr=“請問我”; cout<<nPtr<<"下個輸入是指針地址 "<<static_cast<void *>(nPtr);//語句會報錯,不克不及輸入指針。 return ; }
以上這篇淺析char 指針變量char *=p 這個語句的輸入成績就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。