标签: c function
char* f() { char s[100]; //....function body code return s; }
为什么不能这样写?
答案 0 :(得分:4)
s是一个只存在于函数中的局部变量。
s
函数退出后,s不再存在,其内存将重新分配给程序的其他部分。
因此,您的函数返回一个指向随机无意义内存块的指针。