Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Operator: skiftantal negativt eller för stort, odefinierat beteende
Anmärkningar
Om ett skiftantal är negativt eller för stort är beteendet för den resulterande bilden odefinierat.
För att lösa det här problemet kan du använda en cast på den första operanden för att expandera den till storleken på resultattypen.
Example
Följande exempel genererar C4293 och visar sätt att åtgärda det:
// C4293.cpp
// compile with: /c /W1
unsigned __int64 combine (unsigned lo, unsigned hi)
{
return (hi << 32) | lo; // C4293
// In C, try the following line instead:
// return ( (unsigned __int64)hi << 32) | lo;
// In C++, try this line instead:
// return (static_cast<unsigned __int64>(hi) << 32) | lo;
}