美文网首页C++ 杂记
C++ 指针 void类型指针

C++ 指针 void类型指针

作者: 赵者也 | 来源:发表于2017-01-14 20:09 被阅读8次

注意:本文中代码均使用 Qt 开发编译环境
关于指针:
(1)指针的类型是他所指向的变量的类型,而不是指针本身数据值的类型,任何一个指针本身的数据值都是
unsigned long int 型;
(2)允许声明指向void类型的指针。该指针可以被赋予任何类型对象的地址。例

void *general;

使用示例:

p, li { white-space: pre-wrap; }

#include <QCoreApplication>
#include <QDebug>

int main(int argc, char *argv[])
{
 QCoreApplication a(argc, argv);

 int *i_pointer;
 void *void_pointer;
 int i;

 i_pointer = &i;
 void_pointer = &i;
 i = 10;

 qDebug() << "Output int i value = " << i;
 qDebug() << "Output void pointer = " << void_pointer;
 qDebug() << "Output int pointer = " << i_pointer;
// qDebug() << "Output void pointer value = " << *void_pointer;
 qDebug() << "Output void pointer to int pointer value = " << *(int*)void_pointer;
 qDebug() << "Output int pointer value = " << *i_pointer;

 return a.exec();
}

注意注释掉的部分,这样的用法是错误的,必须要先将void类型的指针转换为正确类型,再进行取值操作。

相关文章

网友评论

    本文标题:C++ 指针 void类型指针

    本文链接:https://www.haomeiwen.com/subject/iczebttx.html