多语言展示
当前在线:1414今日阅读:103今日分享:49

*p+1和*(p+1)的区别是什么

区别是:1、*p表示此指针指向的内存地址中存放的内容,p表示一个指针变量的名字。2、*p一般是一个和指针类型一致的变量或者常量,p输出的是一个16进制数。3、*p是让程序去那个地址取出数据,p存放的是地址。p是一个指针,一个指向长度为3的数组的指针。直接在p上偏移就是行,在*p上偏移就是列。比如:**(p+1)等价于p[1][0]等于40;*(*p+1)等价于p[0][1]等于20。所以,上面这道题中p[0][0]=10,*(p[0]+1)=20,(*p)[2]=30。*p和p的不同:1、表示的含义不同*p表示此指针指向的内存地址中存放的内容。p表示一个指针变量的名字,指此指针变量所指向的内存地址。2、输出的格式不同*p一般是一个和指针类型一致的变量或者常量。p输出的是一个16进制数, 输出一个指针的地址。3、功能不同*p是让程序去那个地址取出数据。p存放的是地址。
推荐信息