編譯器警告 (層級 1) C4293
'operator' : 移位計數為負值或太大,未定義的行為
如果移位計數是負值或太大,所產生影像的行為即未定義。
範例
下列範例會產生 C4293:
// C4293.cpp
// compile with: /c /W1
unsigned __int64 combine (unsigned lo, unsigned hi) {
return (hi << 32) | lo; // C4293
// try the following line instead
// return ( (unsigned __int64)hi << 32) | lo;
}