小蚂蚁学习C语言(19)——C语言指针——指针变量的运算和占用几个字节

喜你入骨 提交于 2021-02-08 02:52:54

 指针变量的运算

            指针变量不能相加,不能相乘,不能相除,只能相减

            如果两个指针变量指向的是同一块连续空间中的不同存储单元,则这两个指针变量才可以相减

一个指针变量占用几个字节?

        sizeof(数据类型)    返回值就是该数据类型所占用的字节数

        例子:sizeof(int) = 4        sizeof( char ) = 1

        sizeof(变量名)    功能:返回值是该变量所占的字节数

    假设p指向char类型变量(1个字节)

    假设q指向int类型变量(4个字节)

    假设r指向double类型变量(8个字节)

    p q r 本身所占的字节数是否一样?    

        答案:p q r本身所占的字节数是一样的。

    总结:

        一个指针变量,无论它指向的变量占几个字节,该指针变量本身只占4个字节。(跟地址线的个数是相呼应的)。因为指针变量本身保存的是一个地址,而这个地址的位数最多也就32位(32位的机子),所以4个字节乘以8位,就是32位了,正好能够满足存放一个最大地址的需要。

        一个变量的地址使用了该变量首字节的地址来表示的。指针变量是通过数据类型和首字节的地址拿出的所有数据 *p



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!