C语言中s+=*(t+i)是什么意思

2024-12-29 15:18:42
推荐回答(5个)
回答1:

相当于:
s = s + *(t + i)
这里的星号(*)不是乘号,而是说明(t+i)是一个指针值, *(t + i)是(t+i)这个指针所指向的内存区域里所存储的值,然后把s和这个值相加,再把得到的结果赋给s

回答2:

取首地址t后第i个地址的值,将其与s相加,并将相加结果赋值给s。
完整的伪码可以理解为:
int a[10]={1,2,3,4,5,6,7,8,9,10};
int s=18;
int i=7;
s=s+a[7]=18+8=26;

回答3:

我们假设
int s;
int *t;
*(t+1)是这个指针所指向的值,再加上s的值,再赋值给s
这里的t应该是一个指针,当移动1位后,再取地址所指向的变量值,最后与s相加。

回答4:

s = s + *(t+i)

回答5:

s = s + t[i];