Tại sao Format('%u', [-100])
dẫn đến '4294967196'
? Tôi đã thử nghiệm điều này trong D7 và XE2.Tại sao Định dạng có '% u' in sai giá trị khi tôi cung cấp cho nó một số âm?
Các documentation trên Format
chức năng cho biết:
% u Unsigned thập phân. Tương tự như% d, nhưng không có dấu là đầu ra.
Vì vậy, tôi đã mong đợi kết quả là '100'
.
Đây có phải là lỗi không?
Whoeha, đây là giải thích sai chính của tôi: _unsigned decimal_ là kiểu đầu vào chứ không phải đầu ra. – NGLN
@NGLN: Các chức năng kiểu printf hoạt động theo cách đó –