C# 为什么我的整数赋值无效?

C# 为什么我的整数赋值无效?,c#,C#,这是我的测试代码,非常简单: class Program { static void Main(string[] args) { int number = 0; int newNumber = number++; Console.WriteLine("the old number is {0},the new number is:{1}", number, newNumber);

这是我的测试代码,非常简单:

  class Program
    {
        static void Main(string[] args)
        {
            int number = 0;
            int newNumber = number++;
            Console.WriteLine("the old number is {0},the new number is:{1}", number, newNumber);
            Console.Read();
        }
    }

而输出结果是:“旧数字是1,新数字是0”,我认为这与我想要的结果相反。

使用后缀增量
++
操作符,它首先返回原始值,然后递增。要获得所需的内容,请使用前缀增量运算符,如

 int newNumber = ++number;

但如果您不想更改编号,请不要使用递增运算符,而是使用加法/减法。

这是因为编号+++通过递增来更新编号的值()。这是在使用表达式中的原始值后完成的。要实现所需的行为,您可以使用:

int number = 0;
int newNumber = number + 1;

在这里,您使用了number++,这是增量后运算符。 它首先赋值,然后递增其值。 您可以通过两种方式实现所需的输出:

  • 使用预增量运算符

    int newNumber=++数字

  • 只需将1添加到number变量,然后将其分配给newNumber即可

    int newNumber=number+1


  • 碰巧微软写了关于其语言特性的文档。在提出问题之前,请确保您已花时间阅读文档,这将使您的绝地编程之旅更加顺利