Computer >> Máy Tính >  >> Lập trình >> lập trình C

con trỏ void trong C

Con trỏ void trong C là một con trỏ không được liên kết với bất kỳ kiểu dữ liệu nào. Nó trỏ đến một số vị trí dữ liệu trong bộ lưu trữ có nghĩa là trỏ đến địa chỉ của các biến. Nó còn được gọi là con trỏ mục đích chung. Trong C, các hàm malloc () và calloc () trả về các con trỏ void * hoặc chung.

Nó có một số hạn chế -

1) Không thể tính toán con trỏ với con trỏ void do kích thước cụ thể của nó.

2) Nó không thể được sử dụng như là tham chiếu.

Thuật toán

Begin
   Declare a of the integer datatype.
      Initialize a = 7.
   Declare b of the float datatype.
      Initialize b = 7.6.
   Declare a pointer p as void.
   Initialize p pointer to a.
   Print “Integer variable is”.
      Print the value of a using pointer p.
   Initialize p pointer to b.
   Print “Float variable is”.
      Print the value of b using pointer p
End.

Đây là một ví dụ đơn giản -

Mã mẫu

#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;
}

Đầu ra

Integer variable is = 7
Float variable is = 7.600000