小编vid*_*con的帖子

堆栈内存上的free()

我在Solaris上支持一些c代码,至少我认为它是奇怪的:

char new_login[64];
...
strcpy(new_login, (char *)login);
...
free(new_login);
Run Code Online (Sandbox Code Playgroud)

我的理解是,由于变量是本地数组,因此内存来自堆栈而不需要释放,而且由于没有使用malloc/calloc/realloc,因此行为未定义.

这是一个实时系统,所以我认为这是浪费周期.我错过了一些明显的东西吗

c free stack garbage-collection memory-management

8
推荐指数
2
解决办法
8428
查看次数

标签 统计

c ×1

free ×1

garbage-collection ×1

memory-management ×1

stack ×1