Gần đây tôi đã bị nhầm lẫn bởi this question. Có lẽ vì tôi không đọc thông số ngôn ngữ (đó là lỗi của tôi, tôi biết).Trình biên dịch và số âm biểu diễn
Chuẩn C99 không cho biết trình biên dịch số âm nào nên được trình biên dịch sử dụng. Tôi luôn nghĩ rằng cách duy nhất để lưu số âm là bổ sung của hai (trong hầu hết các trường hợp).
Vì vậy, đây là câu hỏi của tôi: bạn có biết bất kỳ trình biên dịch hiện tại nào thực hiện theo phần bổ sung hoặc đại diện đại diện mặc định của một người không? Chúng ta có thể thay đổi biểu diễn mặc định với một số cờ biên dịch không?
Cách đơn giản nhất để xác định đại diện nào được sử dụng?
Còn tiêu chuẩn C++ thì sao?
tôi đoán bạn có thể xác định thực hiện được sử dụng bằng cách kiểm tra nhị phân của một giá trị ký hợp đồng với đại diện của mình, tương tự như cách kiểm tra endianness là làm xong. điều này có thể có thể được thực hiện trong #define và được đánh giá tại thời gian biên dịch. – slipperyseal
ý tôi là, nếu bạn chưa giải quyết vấn đề này trong 6 năm qua. : o – slipperyseal
[Là một bổ sung cho một vấn đề thực tế, hoặc chỉ là một vấn đề lịch sử?] (https://stackoverflow.com/q/161797/995714) –