指向指针的指针

    xiaoxiao2021-04-17  31

    普通指针指向的是一个具体的数据,而指针的指针所指向的是一个指针。如下:

    # include <iostream> using namespace std; int main() { int a = 2; int* p = &a; //普通指针,指向一个具体数据 int** pp = &p; //指针的指针,指向一个指针 cout<<a<<endl<<p<<endl<<pp<<endl; return 0; }

    指向指针的指针通常用来访问指针数组。如下:

    # include <iostream> using namespace std; //指针的指针多用在指针数组中 int main() { int lala[] = {1, 2, 3};//lala存放的是第一个元素1的地址,即lala指向第一个元素(一个普通数据) cout<<lala<<endl;//输出0x6ffe20 cout<<*(lala)<<endl<<*(lala+1)<<endl;//输出1、2 char la[] = "mon"; cout<<la<<endl; //字符数组,这里不用加*la, 输出mon cout<<*la<<endl;//*la输出:m char* str[] = {"mon", "tue", "wed", "thu", "fri", "sat", "sun"};//这是一个指针数组,其中保存各个常量字符串的首地址 cout<<*str<<endl<<*(str+1)<<endl;//输出mon、tue char** p = str; //指向指针的指针:数组的首地址str指向一个char*(str存的是第一个char*的地址),也即指向第一个字符串mon的指针 cout<<*p<<endl<<*(p+1)<<endl;//输出与上面一样 return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-673400.html

    最新回复(0)