C/C++ 中的野指针是什么?


指针存储内存地址。野指针不同于指针,即它们还存储内存地址,但指向未分配的内存或已释放的数据值。此类指针称为野指针。

当指针被声明但未初始化时,它表现得像一个野指针。这就是为什么它们指向任何随机内存位置的原因。

以下是 C++ 语言中的野指针示例:

示例

 实际演示

#include <bits/stdc++.h>
using namespace std;
int main() {
   int *arr;
   for(int i=0; i<5 ; i++)
   cout << arr[i] << " ";
   return 0;
}

输出

1 0 -426634956 32764 0

在上面的程序中,声明了一个指针数组,但未对其进行初始化。因此,它显示了一些随机内存位置。

int *arr;
for(int i=0; i<5 ; i++)
cout << arr[i] << " ";

更新于: 2020 年 6 月 26 日

超 3 千人浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告