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

Cのvoidポインタ


Cのvoidポインターは、どのデータ型にも関連付けられていないポインターです。これは、ストレージ内のデータの場所を指し、変数のアドレスを指します。汎用ポインタとも呼ばれます。 Cでは、malloc()およびcalloc()関数はvoid*またはジェネリックポインターを返します。

いくつかの制限があります-

1)voidポインターは具体的なサイズであるため、ポインター演算はできません。

2)逆参照として使用することはできません。

アルゴリズム

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.

これが簡単な例です-

サンプルコード

#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

  1. C#でのアクションデリゲート

    アクションデリゲートは値を返さず、voidの戻り型を持つメソッドで使用できます。 アクションデリゲートを宣言します。 Action<int> del = Display; これが私たちの方法です- public static void Display(int val) {    Console.WriteLine(val); } 次に、値を使用してメソッドを呼び出します。 例 using System; public class Demo {    public static void Main() {     &n

  2. C#でポインタとしてデータ値を取得する

    ポインタは、値が別の変数のアドレスである変数です。 ToString()メソッドを使用して、ポインタ変数によって参照される場所に格納されているデータを取得します。 例 ここに例があります- using System; namespace UnsafeCodeApplication {    class Program {       public static void Main() {          unsafe {