我一直听说在C中你必须真正关注你如何管理记忆.而且我还在开始学习C语言,但到目前为止,我根本不需要做任何内存管理相关活动.我总是想象必须释放变量并做各种丑陋的事情.但事实似乎并非如此.
有人可以给我(带代码示例)一个例子,说明何时需要进行"内存管理"?
我意识到99%的人认为"这是什么......"但请帮助我理解这个使用概念pointers.我相信我的具体问题可以帮助很多新手.
我理解指针是什么,它们是对内存中地址的引用,通过使用(*)运算符,您可以获取该地址中的值.
让我们说:
int counter = 10;
int *somePointer = &counter;
Run Code Online (Sandbox Code Playgroud)
现在我有了内存中的地址counter,我可以通过这样做间接指出它的值:
int x = *somePointer;
Run Code Online (Sandbox Code Playgroud)
哪个x = 10,对吧?
但这是最基本的例子,对于这种情况我可以使用int x = counter;并获得该值,所以请解释为什么指针在Objective-C和其他一些语言中确实是如此重要...在什么情况下只有一个指针才能生成感?
欣赏它.
我正在寻找好的解释.我有一本关于objective-c的1000页书籍,但不幸的是关于内存管理,保留计数的部分,描述得非常糟糕且难以理解.