微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

go和c语言一样吗

这篇文章主要讲解了“go和c语言一样吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“go和c语言一样吗”吧!

go和c语言接近。go是一种类C的高级语言,被描述为“C类似语言”,或者是“21世纪的C语言”。Go从C语言继承了相似的表达式语法、控制流结构、基础数据类型、调用参数传值、指针等很多思想,还有C语言一直所看中的编译后机器码的运行效率以及和现有操作系统的无缝适配。

go和c语言接近。

Go语言是一种类C的高级语言

Go语言(或 Golang)起源于 2007 年,并在 2009 年正式对外发布。Go 是非常年轻的一门语言,它的主要目标是“兼具 Python 等动态语言的开发速度和 C/C++ 等编译型语言的性能与安全性”。

Go语言是一个跟C语言,C++语言,Python,java类似的计算机编程语言。

Go语言有时候被描述为“C 类似语言”,或者是“21 世纪的C语言”。Go 从C语言继承了相似的表达式语法、控制流结构、基础数据类型、调用参数传值、指针等很多思想,还有C语言一直所看中的编译后机器码的运行效率以及和现有操作系统的无缝适配。

Go语言是编程语言设计的又一次尝试,是对类C语言的重大改进,它不但能让你访问底层操作系统,还提供了强大的网络编程和并发编程支持。Go语言的用途众多,可以进行网络编程、系统编程、并发编程、分布式编程。

Go语言和C语言的区别

Go的语法接近C语言,但对于变量的声明有所不同。Go支持垃圾回收功能。Go的并行模型是以东尼·霍尔的通信顺序进程(CSP)为基础,采取类似模型的其他语言包括Occam和Limbo,但它也具有Pi运算的特征,比如通道传输。在1.8版本中开放插件(Plugin)的支持,这意味着现在能从Go中动态加载部分函数

文件对比

文件扩展名 源类型
.h 文件,存放代码声明
.c C语言源文件,存放代码实现
文件扩展名 源类型
.go Go语言源文件,存放代码实现

代码管理对比

  • C语言中通过文件来管理代码

  • Go语言中通过包来管理代码

    • Go语言没有.h文件的概念, 在Go中想使用某一个函数时, 只需要import导入对应的包即可

  • C语言中函数、变量公私有管理

    • 通过extern和static实现是否公开函数和变量

  • Go语言中函数、变量公私有管理

    • 通过函数名称首字母大小写实现是否公开函数

    • 通过变量名称首字母大小写实现是否公开变量

关键字对比

  • C语言中一共有32个关键字

1 2 3 4 5 6 7 8
if else switch case default break return goto
do while for continue typedef struct enum union
char short int long float double void sizeof
signed unsigned const auto register static extern volatile
  • Go语言中一共有25个关键字

1 2 3 4 5 6 7 8
if else switch case default break return goto
fallthrough for continue type struct var const map
func interface range import package defer go select
chan






数据类型对比

  • C语言数据类型

    go和c语言一样吗

  • Go语言数据类型

    go和c语言一样吗

  • C语言各数据类型占用内存空间

    类型 32位编译器 64位编译器
    char 1 1
    int 4 4
    float 4 4
    double 8 8
    short 2 2
    long 4 8
    long long 8 8
    void* 4 8
    • Go语言各数据类型占用内存空间

    类型 32位编译器 64位编译器 本质
    int8/uint8 1 1 signed char/unsigned char
    int16/uint16 2 2 signed short/unsigned short
    int32/uint32 4 4 signed int/unsigned int
    int64/uint64 8 8 signed long long int/unsigned long long int
    byte 1 1 uint8/unsigned char
    rune 4 4 int32/signed int
    int 4 8 根据机器位数决定长度
    uintptr 4 8 根据机器位数决定长度 uint32/uint64
    float32 4 4 float
    float64 8 8 double
    true 1 1 char类型的整型
    false 1 1 char类型的整型

    注释对比

    • 和C语言一样,Go语言也支持单行注释和多行注释, 并且所有注释的特性都和C语言一样

      • 单行注释 // 被注释内容

      • 多行注释 /* 被注释内容*/

    • 在Go语言中,官方更加推荐使用单行注释,而非多行注释(详情可以直接查看Go官方源码)

    感谢各位的阅读,以上就是“go和c语言一样吗”的内容了,经过本文的学习后,相信大家对go和c语言一样吗这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程之家,小编将为大家推送更多相关知识点的文章,欢迎关注!

    版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

    相关推荐