Go是Google开发的一种编译型,可平行化,并具有垃圾回收功能的编程语言。
第一点:
package main func main(){ print("HelloWorld\n") } | #include<stdio.h> voID main(){ printf("helloworld\n"); } |
不同: 函数多了一个关键字 func; go函数中的第一个{必须和函数名同一行,换行运行时会出错("prog.go:11: Syntax error: unexpected semicolon or newline before { ") [1] 函数print 是go 不过几个 内置函数哦。prinf则是stdio中的 库函数; 主函数必须是package main; 结束的分号可以不写哦。当然你一行就好几句,就不能省了。
第二点:
变量类型接下来我们看看变量类型吧。go 跟c差不多。有明确的变量类型, 跟JavaScript比起来都是var 根据运算确定类型,感觉效率总是有问题;有时候甚至自己也不知是什么类型。
go 定义了如下类型 整型:int8,int16,int32,int64(有符号的。好爽啊,直接表明所占的bit数,不知道是不是有人当初记char,short,int,long的长度也花了时间。),无符号,直接加个u,uint8,uint16,uint32,uint64;float就只有float32,float64;当然他们也有int,这个int是32位,还是64位,就要根据机器的位数决定,还有byte=int8;还有一个string类型,暂且认为它跟java中的string差不多吧,就是无法更改其中的某个字符,除非生成一个新的字符串;
好吧,来个加法运算吧;
点击(此处)折叠或打开 1. package main 2. func main(){ 3. var i int 4. var j int8 5. i=1 6. j=i+1 7. print(i,"\t",j) 8. } | 1. #include<stdio.h> 2. voID main() 3. { 4. int i; 5. char j; 6. i=1; 7. j=i+1 8. printf("%d\t%d\n",i,j); 9. } |
除了第六行,好像其他都不一样。
不同: 变量的声明不同了首先是 关键字var, 然后是变量名 i, 然后是类型 int;跟C反了,还多了一个关键字var;为什么要反过来呢? 官方文档里面介绍了, 为了避免c中的某些疏忽, 也许我们都曾经错过哦! 如:int *a,b; 定了两个不同的类型 a是int *; b 是int; 很容易误解为都是指针哦。 go中就没有问题了 var a,b * int; 呵呵,全部是整型指针; print也不一样,不同的内容直接用逗号隔开,好像没有c的好,特别是当大量文档中插入数字时,要分好多断。有没有类似c的 格式化函数呢?让我们慢慢学习吧。 print的参数没有严格要求,既认识i是整型,有认识“\n”是字符串;这一点比C强多了。 如果 编译,会发现左边的第7行有语法错误。因为i的类型和j的类型不同,而c中就没有这么严格了阿。报个 warning;而go中则需要明确写成j=int8(i+1); 好像有点烦哦! 注意是int8(i+1) ! 第三点:for
好了,来个for循环吧。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | packagemain funcmain(){ a:=0 fori:=1;i<10;i++{ fori:=1;i<10;i++{ a+=i print(a, "\n" ) } } } |
第四点:冒泡
以上是内存溢出为你收集整理的golang了解全部内容,希望文章能够帮你解决golang了解所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)