void ** は以前の C 言語コースで見たことがありません。
int *dev_c;
dev_c = &val;
printf("%p\n",dev_c); // val address
printf("%p\n",&dev_c); // get the address of dev_c
printf("%p\n",(void **)&dev_c);
(void **)は型コンバーターですか? 最後の 2 行は同じ結果を出力します。
void ** は以前の C 言語コースで見たことがありません。
int *dev_c;
dev_c = &val;
printf("%p\n",dev_c); // val address
printf("%p\n",&dev_c); // get the address of dev_c
printf("%p\n",(void **)&dev_c);
(void **)は型コンバーターですか? 最後の 2 行は同じ結果を出力します。
は(void**)キャストです。&dev_cアドレス (型は pointer to pointer to int)をキャストし、void代わりにポインターへのポインターにします。
void 型のポインタへのポインタです。その行は、その型への参照をキャストしています。
void**あなたの例dev_cではポインタであるため、これのアドレスは&dev_cポインタへのポインタになり、これはに型キャストされvoid**ます。
(void **)ポインターへのポインターを示す型キャストです。
printf のコード例では、何もしません。