情報詳細Q:gen_image1でポインタを渡した後、もともと確保していたメモリは開放していいのでしょうか。A:gen_image1でポインタを渡した後にHALCONによりメモリが割り当てられるので渡す前に確保したメモリを開放してよい。gen_image_externの場合はHALCONによりメモリが割り当てられないのでポインタを渡す前に確保したメモリを開放してはいけません。メモリの開放はClearProcによって行います。void NewImage(Hobject *new){ unsigned char image[768*525]; int r,c; for (r=0; r<525; r++) for (c=0; c<768; c++) image[r*768+c] = c % 255; gen_image1(new,"byte",768,525,(Hlong)image);}void NewImage(Hobject *new){ unsigned char *image; int r,c; image = malloc(640*480); for (r=0; r<480; r++) for (c=0; c<640; c++) image[r*640+c] = c % 255; gen_image1_extern(new,"byte",640,480,(Hlong)image,(Hlong)free);}ユーザーがメモリ管理して適切なタイミングで開放してください。「ClearProcでメモリ開放」については、C言語のサンプルの関数への言及のようです。 添付ファイルタイトルgen_image1でポインタを渡した後にメモリを解放していいかURL 名000003826公開状況公開済み検証状況公開済み