苏州网站推,物联网系统设计方案,wordpress 商业模板,有没有哪个网站怎么做动漫新闻的1、指针
对比C/C中的指针#xff0c;go语言中的指针显得极为简洁#xff0c;只是简单的获取某个空间的地址 或者 根据指针变量中的内容 获取对应存储空间的内容等操作。 具体示例如下#xff1a; go中使用指针需要注意的点#xff1a;
可以通过指针改变它所指向的内存空…1、指针
对比C/C中的指针go语言中的指针显得极为简洁只是简单的获取某个空间的地址 或者 根据指针变量中的内容 获取对应存储空间的内容等操作。 具体示例如下 go中使用指针需要注意的点
可以通过指针改变它所指向的内存空间中的内容指针变量接收的一定是具体的值指针变量的地址必须相匹配基本数据类型都有对应的指针类型形为 *数据类型
2、标识符定义规则 1、组成部分字母、数字、下划线 2、注意不能以数字开头、严格区分大小写、不能包含空格、不可以使用GO中保留的关键字 3、见名知意增加可读性 4、下划线 “_”在go中本身是一种特殊的标识符称之为空标识符。所以下划线仅能作为占位符使用不能单独作为标识符使用。 5、起名规则 包名package的名字尽量和目录保持一致尽量采取有意义的包名做到简短、有意义但不要和标准库发生冲突 变量名、函数名、常量名采用驼峰法 注意 如果变量名、函数名、常量名首字母大写则可以被其他的包访问如果首字母小写则只能在本包中使用。 import导入语句通常放在文件开头包申明的下面 导入的包名需要使用双引号引起来 包名是从 $GOPATH/src/后开始计算的使用 / 进行路径分隔 3、关键字 预定义的标识符
关键字就是程序发明者规定的具有特殊意义的单词又叫保留字。go语言中一共有25个关键字。
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var作用这里做一简单介绍后续遇到详细展开
预定义标识符go语言中一共有36个预定义标识符包含基础数据类型和系统内嵌函数 运算符 注意 1、go中没有条件运算符三目运算符 2、go中只有后置–没有前置
4、输入相关与用户交互
方式1使用 Scanln函数具体示例如下 方式2使用Scanf函数
5、go语言中的流程控制 顺序结构 、分支结构、 循环结构 分支结构 if分支
//单分支
if 条件表达式 {逻辑代码
}
//多分支
if 条件表达式1 {逻辑1
} else if 条件表达式2 {逻辑2
} else if 条件表达式n {逻辑n
} else {xxx
}
//双分支
if 条件表达式1 {逻辑1
} else {xxx
}使用的注意事项 条件表达式左右的括号可以不写go语言中建议不写 if else if 与表达式之间一定要有空格 在 golang中{}是必须要有的哪怕只有一行代码 switch 分支
//基本语法
switch 表达式 {case 值1值2...:语句块1case 值3值4...:语句块2....default:语句块
}使用注意事项 1、switch后是一个表达式常量值、变量、一个有返回值的函数均可以 2、case后的各个值的数据类型必须和switch后表达式的值类型一致 3、case后可以跟多个表达式使用逗号间隔 4、case后面的表达式如果是常量值则要求其不能重复 5、case后面不需要带break程序匹配到一个case后就会执行对应的代码块然后退出这个switch如果一个都匹配不到则会进入default 6、default语句不是必须的且位置是随意的但是建议写上 7、switch 后可以不带表达式当作if来使用一般少见 8、switch后面也可以直接定义一个变量用分号结束不推荐 9、switch穿透利用fallthrough关键字。如果在case语句块后加fallthrough则程序会据继续执行下一个case这个就叫做switch穿透
循环结构
//语法结构
for 初始表达式; 布尔表达式; 迭代因子; {循环体;
}for循环语句是支持迭代的一种通用结构是最有效、最灵活的循环结构。 for循环在第一次反复之前需要进行初始化即执行初始表达式随后对布尔表达式进行判断true—执行循环体false–终止循环 在每一次循环过程中迭代因子不断递增 or 递减
for range结构是Go语言特有的一种迭代结构在许多场景下都非常实用。for range可以遍历数组、切片、字符串、map及通道。语法结构如下
for key, val : range coll {.....
}对break关键字的理解跳出当前循环即跳出离break最近的那一层循环
for i:0; i 4; i {for j:0; j 4; j {if(i 2 j 2) {break;}}
}如果想要break直接跳出整个循环即跳出外层的for循环需要使用一个新的概念叫做 标签,具体示例如下
lable:for i : 0; i 4; i {for j : 0; j 4; j {fmt.Printf(i: %v, j: %v \n, i, j)if i 2 j 2 {break lable}}}同理continue 关键字也有着同样的用法即 默认生效的是离他最近的for循环但是可以通过加标签的方式达到对任意循环生效的效果。
goto Golang中的goto语句可以无条件的转移到程序中的指定行比如打个标签lable使用goto lable实现无条件跳转 goto语句通常与条件语句配合使用可以来实现条件转移 在Go程序设计中一般不建议使用goto语句以免造成程序流程的混乱