Computer >> Máy Tính >  >> Lập trình >> C ++

Tính toán phạm vi kiểu dữ liệu bằng C ++

Trong C ++, chúng ta có các kiểu dữ liệu khác nhau như int, char, double, v.v. Trong phần này, chúng ta sẽ xem cách lấy kích thước của chúng theo lập trình.

Chúng ta có thể lấy kích thước của các kiểu dữ liệu theo byte, vì vậy chúng ta có thể chỉ cần nhân chúng thành 8 để nhận các giá trị theo bit. Bây giờ chúng ta biết rằng nếu số bit là n, thì phạm vi tối thiểu sẽ là - 2 ^ (n-1), và phạm vi tối đa sẽ là 2 ^ (n-1) - 1 đối với các số có dấu. Đối với các số không có dấu, nó sẽ là 2 ^ n - 1 vì không có số âm.

Mã mẫu

 #include  #include  #define SIZE (x) sizeof (x) * 8 // Lấy kích thước trong không gian tên bit bằng cách sử dụng std; void getRange (string type, int n) {if (type.compare ("SIGNED") ==0) {// cho các số có dấu tính giới hạn dưới và trên int min =pow (2, n - 1); int max =pow (2, n - 1) - 1; cout <<"Phạm vi từ" <<(-1) * min <<"to" < 

Đầu ra

 Đối với int đã ký:Phạm vi từ -2147483648 đến 2147483647 Đối với float đã ký:Phạm vi từ -2147483648 đến 2147483647 Đối với int chưa ký:Phạm vi từ 0 đến -2147483648 Đối với không ký ngắn:Phạm vi từ 0 đến 65535 Đối với ký tự đã ký:Phạm vi từ -128 đến 127