我已经有一段时间没有写C代码了,必须重新理解指针。这是一个修改指针内容的函数。问题是这段代码是否正确。如果我只释放了指针,是否足够?还是我需要释放指针所指向的内容。
void foo(char **str) {
// str has been allocated enough bytes for the following text
*str = "allocate some text";
}
int main(int arc, char *argv[]) {
char *someString;
foo(&someString);
free(someString); // is this the correct place to free
}
谢谢你。
foo(&someString);
... - Oliver Charlesworth