#include <pgm.h>
#include <stdio.h>
int main()
{
// 変数等宣言 -----------------------------------------------------------
int width, height; // 画像の縦画素数,横画素数用変数
int m[9];
gray **image_value; // 濃度(輝度)値保存用
gray max_value; // 最大濃度(輝度)値用変数
int i,j,x,y,buf;
// pgm画像の読み込み ----------------------------------------------------
image_value = pgm_readpgm(stdin, &width, &height, &max_value);
int image_out[j];
// ここから下に画像処理プログラムを書いてください------------------
for(i=0;i<width;i++){
for(j=0;j<height;j++){
m[0]=image_value[i+1][j+1];
m[1]=image_value[i+1][j-1];
m[2]=image_value[i-1][j+1];
m[3]=image_value[i+1][j-1];
m[4]=image_value[j+1];
m[6]=image_value[i+1][j-1];
m[5]=image_value[i+1][j ];
m[7]=image_value[i-1][j ];
m[8]=image_value[j];
for(y=0;y<8;y++){
for(x=0;x<8;x++){
if(m[x+1]<m[x]){
buf=m[x+1];
m[x+1]=m[x];
m[x]=buf;
}
}
}
return m[4];
image_out[j]=m[4]; /*メディアンフィルタ*/
}
}
for(i=0;i<width;i++){
for(j=0;j<height;j++){
image_value = image_out[j];
}
}
// 処理プログラムはこの上まで -------------------------------------------
// pgmファイルの書き出し ------------------------------------------------
pgm_writepgm(stdout, image_value, width, height, max_value, 0);
return 0;
}
---------------------------エラー結果---------------------------------------------
median.c: In function main
median.c:61: warning:assignment makes pointer from integer without a cast
Cygwinでコンパイルしたのですがこのようなエラーがでました。どうしたらいいか教えてください。
Re:Cygwinでコンパイルしたのですがこのようなエラーがでました。どうしたらいいか教えてください。
ソースコードの61行めはここ!
っていうのを示してください。
ちなみに、エラーではなくて警告です。
っていうのを示してください。
ちなみに、エラーではなくて警告です。
Re:Cygwinでコンパイルしたのですがこのようなエラーがでました。どうしたらいいか教えてください。
>warning:assignment makes pointer from integer without a cast
関数の、ポインタを渡さなくてはいけない引数に、ただの整数値を渡しているようです。
変数の前の&が抜けていないか、引数の順番を間違っていないか、確認してみてください。
関数の、ポインタを渡さなくてはいけない引数に、ただの整数値を渡しているようです。
変数の前の&が抜けていないか、引数の順番を間違っていないか、確認してみてください。
Re:Cygwinでコンパイルしたのですがこのようなエラーがでました。どうしたらいいか教えてください。
ところで
>int image_out[j];
iとjがこの時点で初期化されていないように見えますが、大丈夫ですか?
>return m[4];
widthとheightがともに0でない場合、この時点で終了してしまいますが、
これは期待する動作ですか?
>int image_out[j];
iとjがこの時点で初期化されていないように見えますが、大丈夫ですか?
>return m[4];
widthとheightがともに0でない場合、この時点で終了してしまいますが、
これは期待する動作ですか?