char str[100];char *pi=str;char **ppi=*pi;在函數中使用指針pi或者pii去代替數組得的時候,為什么不加上星號?
4 回答

臨摹微笑
TA貢獻1982條經驗 獲得超2個贊
char str[100];
char *pi=str; //相當于char *pi ;pi=str;
char **ppi=*pi;//這個地方抄錯了。應為char **ppi=π
定義加*表明這是指針類型的變量
用的時候,就是用的指針,加*干什么。
只有取指針所指變量的值,或給指針所指的變量賦值的等涉及指針所指的變量的時候,
才會又加*號,表示獲取或改變,指針所指變量的值。
char x=10;
*pi =x; //給指針所指的變量賦值,改變指針所指變量的值(改變*pi) 。
x=*pi; //取指針所指的值,取指針pi所指的變量的值(表示為*pi)賦值給x。

米脂
TA貢獻1836條經驗 獲得超3個贊
pi ppi是指針 帶*是取值的意思
*pi=str 意思是把str這個數組的首地址 放在pi所指的空間里 換句話說就是pi指向了str數組。用pi+1之類的就可以指向數組里面的東西 *(pi+1)等同于str[1]
- 4 回答
- 0 關注
- 648 瀏覽
添加回答
舉報
0/150
提交
取消