void 変数には何の関係もありません。また、void ポインタはキャストでしか指すことができません。そのため、ポイントするデータ型の場所とデータ型が実際にわからない場合は、void ポインターが使用されます。しかし、void 変数とは何ですか?
実際の例はありますか?
void 変数には何の関係もありません。また、void ポインタはキャストでしか指すことができません。そのため、ポイントするデータ型の場所とデータ型が実際にわからない場合は、void ポインターが使用されます。しかし、void 変数とは何ですか?
実際の例はありますか?
void ポインターは、正確なデータ型に関する知識がない場合に、メモリ割り当ての目的で非常に役立ちます。void * の意味を理解するために、独自の malloc を作成してみてください。
またはhttp://www.cplusplus.com/reference/cstdlib/malloc/を読んで ください
これらは、クラシックのような一般的なインターフェースで役立ちますqsort
。
void
qsort(void *base, size_t nel, size_t width,
int (*compar)(const void *, const void *));
http://www.manpagez.com/man/3/qsort/
戻り値のvoid
型は、これを関数ではなくプロシージャとして識別します。これは、(任意の型の) データをまったく返さないためです。sはvoid *
何でも指すことができますが、compar
関数はそれらを使用するために適切にキャストする必要があります。