C语言s[++n]和s[n++]会改变n值吗

会。
给出以下代码和两组数据的运行结果:
Code(C++):
#include \u0026lt;cstdio\u0026gt;int main() {\tint n = 0, s = {0}, ty;\tscanf("%d", \u0026amp;ty);\tprintf("n = %d, s = {%d, %d}\", n, s, s);\tif(ty) s = 5;\telse s = 5;\tprintf("n = %d, s = {%d, %d}\", n, s, s);\treturn 0;}Input 1:
0Output 1:
n = 0, s = {0, 0}n = 1, s = {0, 5}Input 2:
1Output 2:
n = 0, s = {0, 0}n = 1, s = {5, 0} 【C语言s[++n]和s[n++]会改变n值吗】 得出以下结论:
无论使用 s 还是 s,最后都会将 n 的值增加 1;设使用前 n = n\u0026#39;,则使用 s 返回的是 s,而使用 s 返回的是 s。
■网友

■网友
都会改变n值,只是表达式值不同。


    推荐阅读