2 つの関数定義が次の場合:
void func(struct Node *arg){...}
void func2(void *arg){
func(arg);
...
}
しかし、それらは次のように呼ばれます:
struct Node *node = (char *)malloc(6);
func2(node)
は暗黙的ににキャストされ、次に にnode
キャストされると思うので、次のようなことをする必要はありません。void*
struct Node*
func2((void *)node);
or func((struct Node *)arg);
私の理解は正しいですか?