簡體   English   中英

我應該使用 x = -x, 將負數轉換為正數,反之亦然(在 C++ 中)?

[英]Should I use x = -x, to convert a negative number to a positive number and vice versa (in C++)?

我想知道我是否應該使用這個“x = -x”在 C++ 中將負數轉換為正數或將正數轉換為負數。 我的意思是到目前為止工作得很好,但我不確定是否推薦。

我會很感激一些關於這件事的反饋。 謝謝!!

int x = 10;
if (x > 0) {
    x = -x;
}
cout << x; // x = -10;

這樣做很好。 你不應該擔心這樣的事情。 如果您擔心性能,您應該測量性能或檢查它生成的程序集。

我創建了一個編譯器資源管理器示例 它比較x = - x;的程序集x = - x; 並且x *= -1; . 即使您不了解匯編,您也可以清楚地看到它生成相同的代碼。 反正也不是很多! (當優化器標志打開時它就會消失。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM