私は現在 C でプログラミングしており、ポインターの配列を作成しています。配列に含まれるこれらのポインターは、プログラム全体の期間中持続します。
ポインターの配列が配列 A だとします。次に、別のポインターの配列 B を作成し、配列 A の要素を配列 B に入れます。次に、配列 A を解放します。
配列 B の要素はどうなりますか? 配列 A が解放されてから有効でなくなるのでしょうか、それとも、実際のポインタがメモリ内でまだ有効であるため、配列 A は有効でしょうか?
ありがとう
これが私のコードがどのように見えるかの例です--
int a = 1;
int b = 2;
int c = 3;
int **array_a = (int **) malloc (sizeof (int *) * 3);
array_a[0] = &a;
array_a[1] = &b;
array_a[2] = &c;
int **array_b = (int **) malloc (sizeof (int *) * 1);
array_b[0] = array_a[0];
free(array_a);
では、array_b[0] はどうなるでしょうか。