Void pointer คือ pointer ที่ไม่เชื่อมโยงกับชนิดข้อมูลใดๆ ชี้ไปที่ตำแหน่งข้อมูลในหน่วยความจำ เรียกว่า general purpose pointer
ไม่ปลอดภัยที่จะ delete void pointer ใน C/C++ เพราะ delete ต้องเรียก destructor ของออบเจ็กต์ที่ทำลาย ซึ่งเป็นไปไม่ได้ถ้าไม่รู้ชนิดข้อมูล
ตัวอย่าง void pointer แบบง่าย
ตัวอย่าง
#include<stdlib.h> int main() { int a = 7; float b = 7.6; void *p; p = &a; printf("Integer variable is = %d", *( (int*) p) ); p = &b; printf("\nFloat variable is = %f", *( (float*) p) ); return 0; }ผลลัพธ์
Integer variable is = 7 Float variable is = 7.600000