C言語における二重ポインタの値の設定方法は何ですか?

C言語では、2次ポインターはポインターを指すポインターを指します。2次ポインターに値を割り当てるには、まず変数を指す1次ポインターを定義し、次にその1次ポインターを指す2次ポインターを定義する必要があります。その後、2次ポインターを使用して1次ポインターに値を割り当てることができます。

以下に示すサンプルコード:

#include <stdio.h>

int main() {
    int num = 10;
    int *ptr = &num; // 定义一级指针指向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の値を間接的に変更します。

コメントを残す 0

Your email address will not be published. Required fields are marked *