ごめんなさい。
もちろんC言語の話です。intが実装依存っていうことは覚えてましたが、charはどうだったか…混乱してました。
というわけで、C99のJIS規格書(JISX3010)を見ました。sizeof演算子の項を見ると、
意味規則 sizeof演算子の結果は、そのオペランドの大きさ(バイト数)とする。
とあり、
型char、unsigned charもしくはsigned char(又はそれらの修飾版)をもつオペランドに適用した場合の結果は、1とする。
と書いてありました。
つまり、sizeof(unsigned char)は1です。実装依存ではなく1です。ごめんなさい。