手元のvc2008はprintf("0x%08x\n", 'abcd');で0x61626364と出る
もう一文字増やすとコンパイルエラー

規格では処理系定義らしい
こういう仕様だ、と決めてあればどういう値でもいいしコンパイルエラーでもいい