Compiler Warning (level 4) C4389
'equality-operator' : ketidakcocokan yang ditandatangani/tidak ditandatangani
Operasi ==
atau !=
yang terlibat signed
dan unsigned
variabel. Ini dapat mengakibatkan hilangnya data.
Keterangan
Salah satu cara untuk memperbaiki peringatan ini adalah jika Anda melemparkan salah satu dari dua jenis saat Anda membandingkan signed
dan unsigned
jenis.
Contoh
Sampel berikut menghasilkan C4389:
// C4389.cpp
// compile with: cl /EHsc /W4 C4389.cpp
int main()
{
int a = 9;
unsigned int b = 10;
int result = 0;
if (a == b) // C4389
result = 1;
else
result = 2;
if (unsigned(a) == b) // OK
result = 3;
else
result = 4;
return result;
}
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk