プロが教える店舗&オフィスのセキュリティ対策術

Cで画像処理を勉強しています。
img.nHeightやimg.nWidthのように読み込んだ元画像の幅と高さを表す変数はないのでしょうか。
教材では、幅と高さは手動で打つようになっていました。

A 回答 (3件)

読み込んだ画像の種類によってはその中に大きさなどを記載しているものもありますし、全体を(または1行)取り込んで見ないと判断できないものがあります



Windowsなどで使われる BMPファイルならファイルの先頭のある部分に
幅や高さなどの記述がありますよ
    • good
    • 1

作ればあります.


とはいえ, C では「配列valueの長さはvalue.length」ということはありえないので何かを勘違いしているという可能性もあります.
    • good
    • 0
この回答へのお礼

すいません、何か勘違いをしていました。
有難うございます

お礼日時:2009/09/10 19:39

プログラミングですから、変数の命名ルールは各自各々で設計すればよいので・・・


例題は、例題を書いた人の都合のよい内容になっているはずです。

管理する情報が、高さと幅で1ずつぐらいでしたら・・・
例題を簡便に説明するにあたって、構造体を使わないように
int Height, Width;
ぐらいにしても十分だと判断されたのでしょう。

C言語で、img.nHeightとかimg.nWidthみたいな変数は、構造体を使った変数になります。たとえば
struct img {
int nHeight;
int nWidth: };
とか宣言すればimg.nHeightとかimg.nWidthとった具合に参照できます。(ちなみにポインタでの構造体参照はimg->nHeightとかimg->nWidthです。)

PS;構造体をポインタで縦横無尽に操作できるようになれば、中級ぐらいの腕前です。さすればかなり世界が明るく広がるかと思います。
    • good
    • 1
この回答へのお礼

私の欲しかった答えと少し違いますね。
FILE *fp;
fp=fopen(argv[1], "rb");
で読み込んだ画像の(この場合argv[1]の)高さや幅を表すものはないかという意味です。
配列valueの長さはvalue.lengthのように。

お礼日時:2009/09/09 12:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!