English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمية C++ الأساسية

C++ 流程控制

دالة C++

C++ 数组 & 字符串

C++ 数据结构

C++ 类 & 对象

المؤشرات C++

الوراثة C++

دليل STL C++

C++ 参考手册

C++ 指向viod的指针(空指针)

在本文中,您将学习如何使用空指针。这些指针可以指向任何类型的数据。本文将教您如何在程序中有效地使用它们。

在C ++中,不能将一种类型的变量的地址分配给另一种类型指针。请看以下示例:

int *ptr;
double d = 9;
ptr = &d; // 错误:不能将double*赋值给int

但是,有一个例外情况。

在C ++中,有一个通用指针可以指向任何类型。该通用指针是的void指针。

指针 *ptr; // 指向void的指针

مثال 1: مؤشر C++ إلى void

#include <iostream>
using namespace std;
int main() {
    void* ptr;
    float f = 2.3;
    ptr = &f;     // float* to void
    cout << &f << endl;
    cout << ptr;
    return 0;
}

نتائج الإخراج

0xffd117ac
0xffd117ac

في هذا السياق، قيمة النقطة ptr هي &f.

يظهر الناتج أن نقطة الذاكرة ptr تحتوي على عنوان المتغير الفارغ f.