Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Bitwise of operator die wordt gebruikt voor een teken-uitgebreide operand; overweeg eerst naar een kleiner niet-ondertekend type te casten
De compiler heeft impliciet een variabele uitgebreid en ondertekend en vervolgens de resulterende waarde gebruikt in een bitsgewijze OR-bewerking. Dit kan leiden tot onverwacht gedrag.
In het volgende voorbeeld wordt CS0675 gegenereerd:
// CS0675.cs
// compile with: /W:3
using System;
public class sign
{
public static void Main()
{
int hi = 1;
int lo = -1;
long value = (((long)hi) << 32) | lo; // CS0675, value contains -1 (0xffffffff_ffffffff)
// try the following line instead
// long value = (((long)hi) << 32) | ((uint)lo); // correct, value contains 8589934591 (0x00000001_ffffffff)
}
}