Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

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

以下は、voidポインタ用のCプログラムです。 −

#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\n", i, *( (int *)vp + i ) );
   }
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

array[0] = 12
array[1] = 19
array[2] = 25
array[3] = 34
array[4] = 46

  1. C / C ++のvoidポインタのサイズはどれくらいですか?

    voidポインタのサイズは、システムごとに異なります。システムが16ビットの場合、voidポインタのサイズは2バイトです。システムが32ビットの場合、voidポインタのサイズは4バイトです。システムが64ビットの場合、voidポインタのサイズは8バイトです。 これは、C言語でvoidポインタのサイズを見つける例です。 例 #include <stdio.h> int main() {    void *ptr;    printf("The size of pointer value : %d", sizeof(ptr)

  2. C#プログラミングとは何ですか?

    C#は、Microsoftによって開発された最新の汎用オブジェクト指向プログラミング言語です。 C#は、共通言語インフラストラクチャ(CLI)用に設計されています。これは、実行可能コードとランタイム環境で構成されており、さまざまなコンピュータープラットフォームやアーキテクチャでさまざまな高級言語を使用できます。 C#の機能は次のとおりです- ブール条件 自動ガベージコレクション 標準ライブラリ アセンブリのバージョン管理 プロパティとイベント デリゲートとイベント管理 使いやすいジェネリック インデクサー 条件付きコンパイル シンプルなマルチスレッド LINQおよびLambda式 Win