微科社区,轻松开发从此开始! 请登陆 免费注册

微科社区

当前位置:首页 > 编程语言 > C/C++ > C++语言 >

指针解析(二)(原)

时间:2016-10-12 04:01  浏览:努力统计中...
内容接上一篇 ,以下是答案 : 1. ch 代表什么? 答:变量ch的地址 2. pch 代表什么? 答:pch是char类型指针,指向ch。 3. pch 代表什么? 答:指针变量的地址 4. *pch 代表什么? 答:对指针

    内容接上一篇,以下是答案吐舌笑脸

    1. &ch 代表什么?

    答:变量ch的地址

    2. pch 代表什么?

    答:pch是char类型指针,指向ch。

    3. &pch 代表什么?

    答:指针变量的地址

    4. *pch 代表什么?

    答:对指针变量pch进行解引用,间接访问了ch的值。

    5. *pch + 1 代表什么?

    答:间接访问操作,取得的拷贝值加一,(*pch + 1)为‘b’。

    6. *(pch + 1)代表什么?

    答:访问到了ch之后的下一个地址上的内容。

    7. ++pch 代表什么?

    答:假设当为右值,那么应该是先递增,后传地址。

    8. *++pch 代表什么?

    答:假设当为右值,那么应该是先递增,后通过地址间接访问。

    9. *pch++ 代表什么?

    答:假设当为右值,那么应该是先通过地址间接访问,后递增。

    10. ++*pch 代表什么?

    答:对pch指向的值加一。可以看成这样,++(*pch)。

    11. (*pch)++ 代表什么?

    答:假设为右值,先将pch指向的值传给左值,然后对拷贝回来的值进行递增。

    12. ++*++pch 代表什么?

     答: ++(*++pch)这样的话就可以看的比较的清楚了。

    13. ++*pch++ 代表什么?

     答: ++(*pch++)参考第九个问题即可。

    现在,该是将数据和指针的渊源的时候了忍者。先看以下代码:

int a[10];    // 定义了一个长度为10,int类型的数组
int *pa;      // 定义了一个int类型的指针
pa = a; or pa = &a[0];

    上面的代码说明了这么几个事情:

    ① 数组名代表了本数组第一个元素的地址。

    ② 这个事情要用图来表示:

d3e711e1d6c63b2018f9e00855d3f17d

    以上这些小内容只是开胃菜,真正的大餐在后面会慢慢上来!!吐舌笑脸

1. 字符指针

    字符串常量是一个字符数组。如:”I Love You!“,字符数组以“\0“结尾。此时,数组表示字符串常量和字符指针表示就有极大的区别了:

char
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线------