将int增加一个

时间:2014-04-15 21:56:44

标签: c#

在另一页上我说nr = 0

var number = this.NavigationContext.QueryString["nr"];
int Nr = Convert.ToInt16(number);

这有效,Nr = 0

现在我想将Nr升级为一个:

int next = Nr++;

不幸的是,这不起作用...... next = 0,但它应该是1

有人可以向我解释我做错了吗?

4 个答案:

答案 0 :(得分:8)

Nr++递增并返回Nr原始值。

++Nr递增并返回{em>新值Nr。所以你想要的是:

int next = ++Nr;

答案 1 :(得分:3)

在C#(或C ++)中,语句

int next = Nr++;

转换为“将 Nr 的值分配给变量 next ,然后将Nr增加1。

如果你想让Nr先增加,你的陈述应该是这样的:

int next = ++Nr;

以下是++运算符的定义:http://msdn.microsoft.com/en-us/library/36x43w8w.aspx

答案 2 :(得分:0)

问题是... NrNr设置为next后使用next=Nr+1;

后递增{{1}}

答案 3 :(得分:0)

有两个增量运算符 - 预增量++c和后增量c++

var x = ++c;相当于

c = c + 1;
var x = c;

var x = c++;相当于

var x = c;
c = c + 1;

因此xc递增之前或之后接收值。