举个例子
代码片段1:
int func()
{
int x=5;
return x;
}
这个函数不会产生运行时错误。
代码片段2:这个函数不会产生运行时错误。
char* func()
{
char str1[]="HELLO";
return str1;
}
这将产生一个运行时错误--"正在返回本地变量的地址"。
int func()
{
int x=5;
return x;
}
函数返回一个int,即 价值 返回x的值。
char* func()
{
char str1[]="HELLO";
return str1;
}
函数返回 char*
జజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజజ 地址 的 str1
正在被返回。局部变量的存储时间限制在它的范围内。一旦 func()
返回,该地址的 str1
此后无效。如果你取消引用那个返回的指针,你将会触发未定义的行为。