当前位置: 首页 > news >正文

wordpress4.8主题南宁网站建设优化服务

wordpress4.8主题,南宁网站建设优化服务,哈尔滨建设工程管理工资多少,免费ppt模板下载网盘目录 定义枚举iota思考题 定义 go语言常量的定义和其他语言类似#xff0c;常量中的数据类型只能是布尔型#xff0c;数字型#xff08;整型、浮点型、复数#xff09;和字符串型 常量的定义方式和变量一样#xff0c;只不过变量定义使用 var 关键字#xff0c;而常量定… 目录 定义枚举iota思考题 定义 go语言常量的定义和其他语言类似常量中的数据类型只能是布尔型数字型整型、浮点型、复数和字符串型 常量的定义方式和变量一样只不过变量定义使用 var 关键字而常量定义是使用 const 关键字 //常量的定义方式 const a string hello同样类型也可以省略编译器会根据值来判断类型 const a hello多个相同类型的常量声明 const a, b 1, 2枚举 在C中由专门的枚举类型关键字enum在go语言中则用常量表示枚举 const (fruit 0vegetable 1 )数字 0 代表水果数字 1 代表蔬菜 //demo1 package mainimport (fmtunsafe )const (a hellob len(a) //长度c unsafe.Sizeof(a) //字节数 )func main() {fmt.Println(a, b, c) }结果是 hello 5 16为什么 unsafe.Sizeof() 是 16 呢 实际上只要是字符串类型它都是 16。 因为字符串类型对应一个结构体该结构体有两个域一个是指向字符串的指针一个是字符串的长度每个域都占 8 个字节但是不包含指针指向的字符串的内容也就是说字符串里你放 3 个字符和 5 个字符最终都占 16 个字节。 把上面说的结构体可以看成 typedef struct {char* buffer; //指向该字符串的指针占 8 个字节size_tlen; //字符串的长度占 8 个字节 } String;第二个域字符串的长度占 8 个字节哪怕这个字符串的长度是 0它也占 8 个字节。可以想象一下假设一个教室里面有 n 个座位这 n 个座位不管坐多少个人哪怕没有一个人这些座位仍然把教室的空间占着。除非把教室拆了同理创建字符串的时候空间已经占用了无论里面有没有东西。 iota iota 是一个特殊常量。可以认为是一个能被编译器修改的常量 iota 在 const 关键字出现时将被重置为 0const 中每新增一行常量声明将使 iota 增加 1。 const (a iotab iotac iota )第一个 iota 为 0当 iota 在新的一行被使用时它的值会自动加 1所以可以简写 const (a iotabc )//demo2 package mainimport fmtfunc main() {const (a iota //开始计数从 0 开始b //1c //2d hello //3helloe //4相当于 e hellof //5相当于 f hellog 1 //61h //7相当于 h 1i //8相当于 i 1j iota // 恢复计数9k //10l //11)fmt.Println(a, b, c, d, e, f, g, h, i, j, k, l) }输出结果是 0 1 2 hello hello hello 1 1 1 9 10 11那么 iota 在 const 关键字出现时将被重置为 0 怎么理解呢先看这段代码 //demo3 package mainfunc main() {const (a iotabcdef)println(a, b, c, d, e, f) }输出结果是 0 1 2 3 4 5再看这段代码 //demo4 package mainfunc main() {const (a iotabc)println(a, b, c)const (d iotaef)println(d, e, f) }输出结果是 0 1 2 0 1 2稍微琢磨一下上述两段代码就会很容易理解 iota 在 const 关键字出现时将被重置为 0 的含义了。 思考题 //demo5 package mainimport fmtfunc main() {const (a 1 iota //第一行b 3 iota //第二行c //第三行d //第四行)fmt.Println(a, b, c, d) }这段代码的结果是多少 首先 表示左移。 先来看第一行iota 为 0因为这个 iota 是在 const 关键字刚出现那么第一行就可以表示成 a 1 0左移 0 位那就是没有变化。 再来看第二行此时 iota 为 1那么第二行就可以表示成 b 3 13 的二进制是 0000 0011为了看着方便我用八位二进制表示左移 1 位就变成了 0000 0110它的值是 2 ^ 2 2 ^ 1 6 再看第三行有了前面的 iota 的知识我们知道第三行本质上就是 c 3 iota此时 iota 已经变成 2 了。那么实际上第三行是 c 3 2 3 的二进制是 0000 0011左移两位变成了 0000 1100它的值是 2 ^ 3 2 ^ 2 12 再看第四行和第三行的区别在于 iota 变成了 3所以实际上第四行是 d 3 3将 0000 0011 左移 3 位变成了 0001 1000它的值是 2 ^ 4 2 ^ 3 24。 所以整段代码最终的输出结果是 1 6 12 24对于左移操作有简便算法左移一位表示乘以 2左移 n 位表示该数乘以 2 ^ n2的n次方所以左移一位其实是乘以 2 的一次方左移零位也是一样。可以用这种方法再算一遍看和上述结果是否一致。而右移和左移的唯一区别就是左移是乘以右移是除以。
http://www.hkea.cn/news/14452693/

相关文章:

  • 网站备案几年备案一次吗一站多通怎么做网站
  • lamp网站开发架构经验wordpress 移动 建站
  • 广东网站建设公司968网站模板制作与安装教程视频
  • 网页设计作业个人网站wordpress无编辑器
  • 网站文章结构变更怎么做301公司宣传推广方案
  • 网站建设 大学生创业网新浪 sae 安装 wordpress 如何上传模板?
  • 中搜网站提交微信小程序个人可以做吗
  • 深圳html5网站制作网站建设与管理是哪个软件
  • 手机微信的网站案例青海网站建设公司多少钱
  • 80端口被封怎么做网站wordpress首页打不开
  • 网站备案审核怎么做qq业务网站
  • 建设手机网站包括哪些费用建设厅网站技术负责人要求
  • 学校网站建设评审会议通知建设什么样的网站月入一万
  • 网站建设标准合同书网页游戏排行榜前十名超清画面
  • 门户网站建设工作领导小组四川省建设局网站
  • 网站建设服务 行业代码在线做图软件
  • 开封建网站呼叫中心网站建设
  • 网站建设logo图片汕头珠宝网站建设
  • 下载了网站模板怎么用西峰住房和城乡建设局网站
  • 公共网站怎地做wordpress is电影主题
  • asp网站发布ftp江苏苏州
  • 工信部网站域名备案查询搜索引擎的工作原理分为
  • 扬州做网站公司关于化妆品网站成功案例
  • 职高网站建设例题做艺术教育类网站如何申请
  • 雄安优秀网站建设哪家好网站建设分为哪几部分
  • 服务器如何搭建网站wordpress换空间要改
  • 贵阳网页网站制作网站空间维护
  • 制作一个网站的步骤是什么腾龙官方网站做号软件
  • 景区网站怎么做梁朝伟做汤唯视频网站
  • 做婚恋网站赚钱吗校园网站的建设与管理