cuốn sách gpt4 ai đã làm

Cảnh báo C++ để so sánh dữ liệu

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 15:49:20 30 4
mua khóa gpt4 Nike

Có một biến WORD trong chương trình của tôi.

giờ WORD;

Nhưng khi tôi so sánh nó

if(giờ>=0 && giờ<=18)
{
giờ+=6;
}

nó sẽ tạo ra một cảnh báo[CẢNH BÁO] So sánh luôn đúng do phạm vi loại dữ liệu hạn chế

Tôi đang sử dụng Dev-C++ làm IDE.

câu trả lời hay nhất

if(giờ>=0 && giờ<=18)

Tôi nghĩ cảnh báo là dành cho giờ >=0 so sánh, nó luôn luôn áp dụng cho giờ Đúng TỪ loại, đó là một typedef ngắn không dấu(thông thường) điều này có nghĩa là giờ luôn lớn hơn hoặc bằng 0:

 typedef không dấu WORD ngắn;

Trên MSVC++ đây là cách WORD được xác định, hãy kiểm tra xem trình biên dịch của bạn có không dấu. nếu nókhông dấu1, thì chotất cả có thể,giờ >=0 rõ ràngĐÚNG VẬY > Giờgiá trị. Trong trường hợp này, bạn chỉ cần viết:

if(hour<=18) //(hour >= 0) được ngụ ý bởi loại của nó
{
giờ+=6;
}

1. Xin lưu ý rằng đó là int không dấu 还是 ngắn không dấu Không quan trọng. miễn là như vậykhông dấu,giờ >=0 ĐẾN giờ Tất cả các giá trị có thể có của đều đúng.

Về cảnh báo C++ về so sánh dữ liệu, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/11150642/

30 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress