2021.01.13 QA プログラム関連
bmp ファイルで h[54] と画像の点の対応は?
padding などのややこしいことを避けるために横のピクセル数(小さい点の数) n
は 4 の倍数とする.
この時 h[54+3*i], h[54+3*i+1], h[54+3*i+2] の 3 bytes が
左下から i 番目の点の色の値となる.
ただし点の番号の付け方 i は, たとえば n=8 なら
....
.....
16 17 18 18 19 20 21 22
8 9 10 11 12 13 14 15
0 1 2 3 4 5 6 7
となる.
できた bmp ファイルが黒一色です
小さいサイズの場合, 拡大が不十分ということはないですか?
毎回同じ乱数が出てきます
srand 函数を用いて初期化を行う.
rand 函数, srand 函数
unsigned char c に 0xff より大きい数を代入できますか?
unsinged char には 1 byte の数しか代入できません.
unsigned char c;
c = 0xfecd;
と代入しても下の2桁の 0xcd しか代入されません.
たとえば次のプログラムを考えます.
#include
int main() {
unsigned char c;
c = 0xfecd;
printf("%x\n",c);
return 0;
}
コンパイルで warning が出て, 実行すると
cd
と表示されます.
同じように
sizeof(int) が 4 の場合,
0xffffffff より大きい数を int 型の変数に代入しようとすると,
同じように上の桁が捨てられます.