注册 登录
编程论坛 C++教室

首地址为什么是p=p-i+1;

lt2201004068 发布于 2012-05-12 10:40, 704 次点击
#include<iostream>
using namespace std;
int *main()
{
   int *p=new int[5];
   int i,j;
   int a;
   for(i=0;i<5;i++,j++)
   {
   cin>>a;
   cout<<a<<endl;
   }
   p=p-i+1;/////////////////////////
   return p;
}
4 回复
#2
非己莫属2012-05-12 11:19
楼主,看不懂你在上面程序中,到底想干什么呀,请指出目的。
#3
lt22010040682012-05-12 12:48
回复 2楼 非己莫属
这个函数要返回数组的首地址,但书上说首地址是p-i+1,我不懂为什么是p-i+1,懂了吗?
#4
mathspanda2012-05-12 16:26

这个是完整的程序么?它到底是用来干嘛的?
照你这个程序来看的话,你整个程序都没有改变p的指向,所以首地址肯定还是p啊!
#5
lt22010040682012-05-12 18:51
回复 4楼 mathspanda
呵呵,我问了高手测试了,可能是书上有错,
1