- 364 名前:324 mailto:sage [2008/12/02(火) 21:54:19 ID:SXgUqfvb0]
- >>343
えーと、、、 グローバル変数を宣言するときにポインタにNULLを代入 int *table = NULL; フィルタ処理時(func_proc関数)でポインタがNULLならメモリを確保 if(table==NULL) table = (int *)malloc( (4500*64/8*2+1)*sizeof(int) ); フィルタの有効無効が変わったウィンドウメッセージが来て、 ポインタがNULLでなく、フィルタがアクティブでなかったらメモリを開放&ポインタをNULL case WM_FILTER_CHANGE_ACTIVE: if( table!=NULL && !(fp->exfunc->is_filter_active(fp)) ){ free(table); table = NULL; } なんて感じで作ったんです。 どこが間違っているのか分からないよー Cに詳しい方、ご教授くださいませ! 、、、あ、ポインタがNULLならfreeをしても何も起きないのだから、判定は不要かな
|

|