温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

go语言和c语言有什么区别

发布时间:2020-06-16 09:55:08 来源:亿速云 阅读:1132 作者:Leah 栏目:编程语言

这期内容当中小编将会给大家带来有关go语言和c语言有什么区别,以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1、源文件对比

C语言源文件

文件扩展名源类型
.h头文件,存放代码声明
.cC语言源文件,存放代码实现

Go语言源文件

文件扩展名源类型
.goGo语言源文件,存放代码实现

2、代码管理对比

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

  ● 想使用某一个函数时,只需要include导入对应的.h文件即可

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

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

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

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

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

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

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

3、关键字对比

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

12345678
ifelseswitchcasedefaultbreakreturngoto
dowhileforcontinuetypedefstructenumunion
charshortintlongfloatdoublevoidsizeof
signedunsignedconstautoregisterstaticexternvolatile

Go语言中一共有25个关键字

12345678
ifelseswitchcasedefaultbreakreturngoto
fallthroughforcontinuetypestructvarconstmap
funcinterfacerangeimportpackagedefergoselect
chan






4、数据类型对比

C语言数据类型

go语言和c语言有什么区别

Go语言数据类型

go语言和c语言有什么区别

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

类型32位编译器64位编译器
char11
int44
float44
double88
short22
long48
long long88
void*48

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

类型32位编译器64位编译器本质
int8/uint811signed char/unsigned char
int16/uint1622signed short/unsigned short
int32/uint3244signed int/unsigned int
int64/uint6488signed long long int/unsigned long long int
byte11uint8/unsigned char
rune44int32/signed int
int48根据机器位数决定长度
uintptr48根据机器位数决定长度 uint32/uint64
float3244float
float6488double
true11char类型的整型
false11char类型的整型

5、常量变量对比

C语言定义常量和变量格式

数据类型 变量名称 = 值;
const 数据类型 常量名称 = 值;

Go语言定义常量和变量格式

除了以下标准格式外,Go语言还提供了好几种简单的语法糖

var 变量名称 数据类型 = 值;
const 变量名称 数据类型 = 值;

6、编程思想对比

C语言是一门面向过程的编程语言

面向过程: 按部就班, 亲力亲为,关注的是我应该怎么做?

做饭例子: 面向过程做饭

1.上街买菜

2.摘菜

3.洗菜

4.切菜

5.开火炒菜

6.淘米煮饭

7.吃饭

Go语言是一门面向对象的编程语言

面向对象:化繁为简, 能不自己干自己就不干,关注的是我应该让谁来做?

做饭例子: 面向对象做饭

1.找个会做饭女朋友 or 男朋友

2.老婆我饿了 or 老公我饿了

3.躺着...等她/他把饭做好

4.吃饭

不要把面向过程和面向对象想象得那么神奇, 它们只是思考问题的方式不同而已

看完上述内容,你们对go语言和c语言的区别有进一步的了解吗?如果还想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI