常量表达式 constant expression

dexter-qjq · · 136 次点击 · 开始浏览    置顶
在go语言源码测试文件中,存在这个一个测试用例: package main const ( A int = 1 B byte; // ERROR "type without expr|expected .=." ) const LargeA = 1000000000000000000 const LargeB = LargeA * LargeA * LargeA const LargeC = LargeB * LargeB * LargeB // GC_ERROR "constant multiplication overflow" const AlsoLargeA = LargeA << 400 << 400 >> 400 >> 400 // GC_ERROR "constant shift overflow" 最后两个的错误能够理解,但是不知道这个范围是什么,这些常量表达式在什么范围里是合法的,不会出现溢出? 我能在哪里获得这些信息?
136 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传