c语言中go的作用,golang和c语言的区别是什么?

golang和c语言的区别是什么?下面给大家对比一下golang和c语言。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

f10e2933bb2139b5228b68bf8c445883.png

1、源文件对比

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

.cC语言源文件,存放代码实现

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

2、代码管理对比

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

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

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

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

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

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

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

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

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

3、关键字对比

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

dowhileforcontinuetypedefstructenumunion

charshortintlongfloatdoublevoidsizeof

signedunsignedconstautoregisterstaticexternvolatile

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

fallthroughforcontinuetypestructvarconstmap

funcinterfacerangeimportpackagedefergoselect

chan

4、数据类型对比

C语言数据类型

bf1344ae642db85565ceb6a32c8781dc.png

Go语言数据类型

c9cfa8081722472f06bd2a34312130e8.png

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语言请关注go语言教程栏目。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值