很不懂 k++到底什么意思

#include
using namespace std;
int main()
{
int i,j,sum=0,a[50],t;
int k;
//i开始从一加到1000
for(i=1;i<1000;i++)
{
sum=0;
for(j=1;j<i;j++)//内层循环 控制j小于i 但j每次循环从1开始
{
if(i%j==0) //如果i能整除j 执行下面的循环
{
sum+=j; //j相当于因数 每个因数开始相加
a[k++]=j;
}
}

    t=k;

    if(sum==i)
    {
        cout<<i<<"->";
        for(k=0;k<t;k++)
        {
            cout<<a[k];
            if(k<t-1)
            cout<<".";
        }
        cout<<endl;
    }
k=0;    
}

}

k++先计算在自增k++,相对应的还有++k是先自增在计算

自增操作,相当于 k = k+1; 每次执行都在原先的基础上 +1

k++是先赋值再加1,相应的还有一个++k这个是先加1再赋值

只需要记住 + 号在后面就是后加(先赋值后加);+ 号在前面就先加(先加后赋值);其实两者差别不大。

我只是觉得你应该先看看基础。。。

k++就是在用完k后进行k=k+1;

以下是汇编代码:
k++;
00CF618D mov eax,dword ptr [k]

00CF6190 add eax,1

00CF6193 mov dword ptr [k],eax

++k;
00CF6196 mov eax,dword ptr [k]

00CF6199 add eax,1

00CF619C mov dword ptr [k],eax

这是某种编译器的显示形式。
对于表达式来说:k++代表k自加之前的值,而++k就是k本身。