返回地址是否确保非NULL返回值?

use*_*982 1 c c++ return return-type

在函数中,如果我返回一些原始类型的对象的地址.我可以放心,它永远不会是一个NULL价值吗?

我是否需要查看NULL类似的声明

if (r_value) { //do something }  
else { //ERROR }  
Run Code Online (Sandbox Code Playgroud)

Mik*_*our 7

对象的地址永远不会为null.

请注意,您没有返回指向非静态局部变量的指针.当函数返回时,它将被销毁,因此指针将无效; 但它不会为空,也没有办法告诉它不再有效.

在C++中,我将返回一个引用而不是一个指针,以明确它不会为null.那当然不是C的选择; 我不知道你问的两种标记语言中的哪一种.