我正在为我的编程语言考试而学习,我偶然发现了这个(用 C 语言编写):
*tp++ = *sp++
;
我明白了什么*tp = *sp
;可能会,但是在这里,指针何时递增?在获取值之前,之后?按什么顺序?感谢您的回答
最佳答案
由于 ++
运算符出现在变量之后,因此值将在表达式求值后递增。所以这会将当前由 sp
指向的值分配给当前由 tp
指向的位置,然后递增两个指针。
如果表达式是
*(++tp) = *(++sp)
然后指针将在评估之前递增。
这些构造通常出现在循环内。
关于c - 理解 C : Incrementing pointers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6161559/