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

C++ ponteiro para viod (ponteiro nulo)

Neste artigo, você aprenderá a usar ponteiros nulos. Esses ponteiros podem apontar para qualquer tipo de dados. Este artigo ensinará como usá-los eficazmente em programas.

em C ++nele, não pode-se atribuir o endereço de uma variável de um tipo para outro tipoponteiro. Veja o exemplo a seguir:

int *ptr;
double d = 9;
ptr = &d;   // erro: não pode-se atribuir double*atribuição para int

mas, há uma exceção.

em C ++nele, há um ponteiro genérico que pode apontar para qualquer tipo. Este ponteiro genérico é um ponteiro void.

void *ptr; // ponteiro para void

Exemplo1: ponteiro para void de C ++ponteiro

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

Saída

0xffd117ac
0xffd117ac

Aqui, o valor do ponteiro ptr é &f.

A saída exibe que o ponteiro ptr armazenou o endereço do variável float f.