#include <iostream>
using namespace std;
int main()
{
int *sum=0; //定义一个整形指针变量*sum并初始化为0
int *p=0; //定义一个整形指针变量*p并初始化为0
int x=0; //定义一整形变量x并初始化为0
sum=new int[100]; //用new为sum申请100内存空间
*sum=1; //将*sum赋值为1,也就是首地址保存为1
p=sum; //保存空间的首地址
for (int i=2; i<=100;i++) //使用for循环,循环初始值i为2(从第二格内存地址开始),次数为小于等于100;i自增
{
x=*sum; //x保存*sum的值为1
sum++; //内存地址向后移动一位
*sum=x+i; //将x+i的值存入*sum,*sum=1+2。此时循环到x=*sum,x=1+2。移动一位,*sum=1+2+i.......
}
cout<<"和为:"<<*sum<<endl;
delete[] sum;
sum=0;
p=0;
return 0;
}
老师帮我看一下注释写的对不对。这代码我在变编译的时候出现了内存错误,请检查 |