执行以下代码片段后,为什么int d 25而不是26的值?
int n = 20;
int d = n++ + 5;
Console.WriteLine(d);
Run Code Online (Sandbox Code Playgroud)
Ric*_*dle 10
n++是"后增量运算符",它仅在周围表达式中使用其初始值后递增该值.
您的代码相当于:
int d = n + 5;
n = n + 1;
Run Code Online (Sandbox Code Playgroud)
要在使用其值之前递增值,请使用++n预增量运算符.