C言語における二重ポインタの値の設定方法は何ですか?
C言語では、2次ポインターはポインターを指すポインターを指します。2次ポインターに値を割り当てるには、まず変数を指す1次ポインターを定義し、次にその1次ポインターを指す2次ポインターを定義する必要があります。その後、2次ポインターを使用して1次ポインターに値を割り当てることができます。
以下に示すサンプルコード:
#include <stdio.h>
int main() {
int num = 10;
int *ptr = # // 定义一级指针指向num变量
int **pptr = &ptr; // 定义二级指针指向ptr指针
printf("num = %d\n", num);
printf("*ptr = %d\n", *ptr);
printf("**pptr = %d\n", **pptr);
// 给二级指针赋值
int newNum = 20;
*ptr = newNum;
printf("num = %d\n", num);
printf("*ptr = %d\n", *ptr);
printf("**pptr = %d\n", **pptr);
return 0;
}
上記の例では、まず変数numを定義し、次に一次ポインタptrをnum変数に向けて定義します。そして、ptrポインタに二次ポインタpptrを定義します。pptrを使用してptrを変更することで、numの値を間接的に変更します。