在C中使用指针时防止内存覆盖

时间:2015-03-11 14:01:42

标签: c

我是C的新手,我开始编写一个在启动后运行的简单程序,没有操作系统,所以我没有{\ n \ n {1}}等等。

我试图了解内存管理;看看这个例子:

malloc

我怎么知道char *a = read_string(); // gets user input string, the length is unknown. char *b = read_string(); 没有覆盖b

特别是在编写只在运行时知道字符串长度的函数时?

2 个答案:

答案 0 :(得分:1)

在您的问题中,一切都取决于read_string()函数实现。如果该函数为每个新字符串正确分配内存,则ab指针将指向不同的字符串。

答案 1 :(得分:0)

我必须编写自己的内存管理器来跟踪已分配的内存。

大家好。