C語言中的void指標是什麼?
它是一個可以儲存任何資料型別變數(或)指向任何資料型別變數的地址的指標。
宣告
void指標的宣告如下所示 −
void *pointername;
例如 − void *vp;
訪問 − 使用型別轉換運算子透過指標訪問變數的值。
語法
void指標的語法如下所示 −
* ( (type cast) void pointer)
示例 1
int i=10;
void *vp;
vp = &i;
printf ("%d", * ((int*) vp));
// int * type cast示例
以下是用C語言編寫的void指標程式 −
#include<stdio.h>
main ( ){
int i =10;
float f = 5.34;
void *vp;
vp = &i;
printf ("i = %d", * ((int*)vp));
vp = &f;
printf ( "f = %f", * ((float*) vp));
}輸出
執行上述程式時,會產生以下結果 −
i = 10 f = 5.34
示例 2
下面給出在void指標中進行指標算術的C語言程式 −
#include<stdio.h>
#define MAX 20
int main(){
int array[5] = {12, 19, 25, 34, 46}, i;
void *vp = array;
for(i = 0; i < 5; i++){
printf("array[%d] = %d
", i, *( (int *)vp + i ) );
}
return 0;
}輸出
執行上述程式時,會產生以下結果 −
array[0] = 12 array[1] = 19 array[2] = 25 array[3] = 34 array[4] = 46
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP