共用方式為


編譯器警告 (層級 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;
}