关于指针
  • 板块灌水区
  • 楼主blue_peace
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/12/21 11:40
  • 上次更新2024/12/21 15:21:31
查看原帖
关于指针
1246468
blue_peace楼主2024/12/21 11:40
#include <iostream> 

int* createPointer() {
    int* ptr = new int; // 动态分配内存
    *ptr = 42;          // 赋值
    return ptr;        // 返回指针
}

int* cp2() {
	int x = 24;
	return &x;
}

int main() {
    int* myPtr = createPointer(); // 使用返回的指针
    int* mp = cp2();
    std::cout << *myPtr << ' ' << *mp << std::endl; // 输出
    delete myPtr; // 释放动态分配的内存
    return 0;
}

这个程序输出了42 24的结果,并正常返回0。

但是为什么出现了Warning:

In function 'int* cp2()':
[Warning] address of local variable 'x' returned [-Wreturn-local-addr]

我想知道这个Warning可能会造成什么后果

2024/12/21 11:40
加载中...