Tôi đang cố gắng chuyển đổi một số mã java thành C# và nó hoạt động hoàn hảo cho đến nay nhưng tôi đã gặp phải vấn đề với toán tử ^. Trong C# Console.WriteLine(127^0xffffffff);
in 4294967168 trong khi trong Java System.out.println(127^0xffffffff);
bản in -128. Tôi đã nhìn xung quanh để xem có cái gì khác mà tôi cần phải sử dụng thay vào đó nhưng tôi đã không đi qua bất cứ điều gì.C# bitwise XOR (^) so với Java bitwise XOR (^)
6
A
Trả lời
8
C# hỗ trợ ký cũng như unsigned số nguyên (Java hỗ trợ ký chỉ những người thân):
unchecked {
// you want signed int
int result = (int) (127^0xffffffff);
Console.WriteLine(result);
}
+2
Vấn đề thực sự là 0xffffffff không thể được biểu diễn như một số dương trong một int đã ký, sau đó làm cho nó được hiểu là int không dấu. '0xff' sẽ được hiểu là int int và not unsigned. – Voo
+0
Ah! Tôi ngớ ngẩn quá. Cảm ơn nhiều! Tôi sẽ chọn câu trả lời này khi câu trả lời cho phép tôi trong khoảng 6 phút. – Orion
Các vấn đề liên quan
- 1. Bitwise Hoặc: C# so với C++
- 2. So sánh bitwise Java của một byte
- 3. Java Bitwise hoạt động
- 4. Bitwise trừ bằng Python
- 5. "Bitwise Và" và trái Padding trong C++
- 6. Java hành Bitwise <<
- 7. perl Bitwise AND và bitwise chuyển
- 8. Thực hiện tổng bitwise
- 9. Cờ enum & bitwise hoạt động so với "chuỗi bit"
- 10. JavaScript - Bitwise XOR trên chuỗi?
- 11. XSLT Bitwise Logic
- 12. Thao tác bitwise Java Vs BigInteger
- 13. Java bitwise hoặc giữa Byte và Int
- 14. Bitwise AND với hàm trả về bool trong C++
- 15. "Bitwise AND" trong Lua
- 16. Hoạt động bitwise trên
- 17. C# bitwise shift trên ushort (UInt16)
- 18. Cờ bitwise trong Delphi
- 19. hoạt động Bitwise trong Postgres
- 20. Điểm nổi bật Java vs C: "x * x" khác với "pow (x, 2)"?
- 21. Kết quả điều hành Bitwise trong C++
- 22. đầu ra Weird cho Bitwise NOT
- 23. Delphi Bitwise proc chuyển đổi sang PHP
- 24. Thao tác bitwise với CGBitmapInfo và CGImageAlphaInfo
- 25. Đảo ngược bit sử dụng bitwise
- 26. php mảng Bitwise
- 27. Bổ sung độ bão hòa bitwise trong C (HW)
- 28. GCC Bitwise thuộc tính
- 29. Đối diện của Bitwise OR
- 30. Log4J 2 cấu hình theo dõi và so sánh Bitwise
Quên để thêm, tôi cần nó để in -128. – Orion
Trong Java, các toán hạng được khuyến khích gõ 'int', và kết quả là một' int'. Trong C# các toán hạng được nâng lên 'uint', và kết quả là' uint'. Đúc thích hợp nên chăm sóc này. –