增加和減少混淆 (Incrementing and Decrementing Confusion)


問題描述

增加和減少混淆 (Incrementing and Decrementing Confusion)

我對以下行為有點困惑:

int a = 3;
a++;
in b = a;

我知道當您執行 a++ 時,它會添加一個 1,從而使 a = 4 現在 b 等於 a 所以它們都是 4。

int c = 3;
int d = c;
c++

但是,這裡它告訴我 c是 4 而 d 是 3。因為 c++ 使得 c = 4; d = 4; 也不會嗎?


參考解法

方法 1:

This line:

int d = c;

says "Declare a variable called d, of type int, and make its initial value equal to the current value of d."

It doesn't declare a permanent connection between d and c. It just uses the current value of c for the initial value of d. Assignment works the same way:

int a = 10;
int b = 20; // Irrelevant, really...
b = a;      // This just copies the current value of a (10) into b
a++;
Console.WriteLine(b); // Still 10...

(by Yur NazoJon Skeet)

參考文件

  1. Incrementing and Decrementing Confusion (CC BY‑SA 2.5/3.0/4.0)

#Console #C#






相關問題

grails 日誌消息未顯示在 STS 3.0 控制台上 (grails log messages not displaying on STS 3.0 console)

在 AppFog 上,如何在終端(node.js)上查看控制台日誌 (on AppFog, how to see the console logs on the terminal (node.js))

控制台應用程序中的多個參數未正確解析 (Multiple args in Console Application not parsing correctly)

WPF 應用程序沒有輸出到控制台? (No output to console from a WPF application?)

用 .NET 4.5 編寫的 Windows 服務中的 Console.Out 和 Console.Error 競爭條件錯誤 (Console.Out and Console.Error race condition error in a Windows service written in .NET 4.5)

Visual Basic 2013 - 控制台輸入令牌? (Visual Basic 2013 - Console Input Tokens?)

帶有 stringbuilder 日曆表的控制台日曆 (Console Calendar with stringbuilder calendar sheet)

增加和減少混淆 (Incrementing and Decrementing Confusion)

有沒有辦法在標準 C++ 中直接從鍵盤讀取輸入? (Is there a way to read input directly from the keyboard in standard C++?)

是否可以在方案中編寫控制台應用程序? (Is it possible to write console applications in scheme?)

犀牛的控制台輸入功能? (console input function for rhino?)

輸出中的 PowerShell 空白 (PowerShell gaps in output)







留言討論