为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含687字,纯文字阅读大概需要1分钟。
内容图文
![为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java](/upload/InfoBanner/zyjiaocheng/664/25b3df16c14c457a98bee6b6a9451ac5.jpg)
这实际上是一个普遍的问题,但是由于我正在使用Go和C#,所以现在发生了.
假设我们要从Go中的用户输入中分配一个变量:
func main() {
var input float64
fmt.Scan(&input)
}
很清楚为什么我们需要一个存储位置来放入新值.但是为什么在Java或C#等语言中,我们没有遵循相同的逻辑:
var input = Convert.ToInt32(Console.ReadLine());
// and not &input ...
解决方法:
Java和C#是高级语言,可以抽象出大多数内存管理以及低级语言(例如C)所需的其他特定内容.
在这种情况下,Console.ReadLine()函数分配内存以存储控制台输入,并将其复制到输入变量.
由于这些语言具有垃圾回收功能,因此分配和取消分配内存是自动完成的,因此该框架不需要您显式传递要写入的内存地址,也不希望您在使用完内存后就释放内存.
编辑:
请参阅@kostix评论,以获取对该答案的极大改进.
内容总结
以上是互联网集市为您收集整理的为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java全部内容,希望文章能够帮你解决为什么我们需要使用指针为Go / C中的变量分配值,而不是C#/ Java所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。