プログラミング初心者です
今、学校でC言語を習っている途中の初心者です。今回、C言語における画像処理の基礎的なことを学んだのですが、その後自分で試してみようとしたらうまくいきません。
できない内容
学校では右下の1ビットを塗りつぶすということをしたので、ではほかのところも多く塗れないのかと疑問に思い、試してみたのですが、うまくいきません。周りを囲んでみたいと思ってプログラムを書いたのですが、全然うまくいきません。
該当のソースコード
int main(void) { char name[100]; unsigned char header[54]; unsigned char screen[480][640][3]; FILE *fp; printf("読み込むビットマップファイルは?>>"); scanf("%s", name); fp = fopen(name, "rb"); fread(header, 1, 54, fp); fread(screen, 1, 480 * 640 * 3, fp); fclose(fp); screen[479][639][2] = 255; screen[0][0][0] = 0; screen[0][0][1] = 0; fp = fopen("j116135.bmp", "wb"); fwrite(header, 1, 54, fp); fwrite(screen, 1, 480 * 640 * 3, fp); fclose(fp); return 0; }``` **試したこと** 上記のコード下から6~8行目を変更すれば出来ると思い、いろいろ試してみたのですが、結局1ビットしかぬれませんでした。 また、freadやfwriteをいじってみたのですが、エラーが起こってしまいました。 **その他** 最終的に周りを青で3ビットずつ囲いと思っています。 どこをどのようにすれば複数を塗りつぶせるか、また、単色で囲うことができるのか返答のほどよろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/10 08:04