他の言語だと未定義になってないのにcやc++ではなんで未定義動作になってるんだ?