変数と定数の囲碁の基礎

変数と定数の囲碁の基礎

識別子とキーワード

識別子

識別子は、言葉は特別な意味プログラマ定義のプログラミング言語では、そのような変数名、定数名、関数名などなどを持っています。ゴー言語英数字の識別子と_(アンダースコア)、およびすることができます文字だけと_始まります。いくつかの例:abc__123a123

キーワード

キーワードは、特別な意味を持っているプログラミング言語定義済みの識別子良いです。キーワードと予約語は変数名として推奨されていません。

ゴー言語は、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

囲碁言語37の予約語があります。

    Constants:    true  false  iota  nil

        Types:    int  int8  int16  int32  int64  
                  uint  uint8  uint16  uint32  uint64  uintptr
                  float32  float64  complex128  complex64
                  bool  byte  rune  string  error

    Functions:   make  len  cap  new  append  copy  close  delete
                 complex  real  imag
                 panic  recover

変数

それは同じスコープの繰り返し文をサポートしていない、使用に宣言する必要性に言語変数を移動します。変数宣言の後に移動して、言語を使用する必要があります。

宣言

var 变量名 变量类型
var name string
var age int
var isOk bool

バッチステートメント

var (
    a string
    b int
    c bool
    d float32
)

変数の初期化

デフォルトの整数と浮動小数点変数値0文字列変数のデフォルト値空字符串ブール変数のデフォルトfalseスライス、機能、デフォルトのポインタの変数nil

また、変数の割り当てを宣言することができます。

var 变量名 类型 = 表达式

型推論

var name = "guo"
var age = 26

ショート変数:=ステートメント

関数内、あなたはもっと簡単な使用することができます:=宣言し、初期化変数への道を。

匿名変数

アンダースコアで匿名変数_、匿名の変数名は、スペースを取りませんメモリを割り当てないので、匿名の変数宣言の間には重複が存在しないと述べました。

定数

const pi = 3.1415
const e = 2.7182

定数複数の一方のconst宣言するときの値が省略された場合、トップラインの値は、同じを表します

const (
    n1 = 100
    n2
    n3
)

定数n1n2n3値は100です

イオタ

iota一定のカウンターに行く言語は、定数は唯一の式で使用することができています

iota場合はconstキーワードが表示されますが、ゼロにリセットされます。各新しい行のCONST定数宣言は、あろうiota(IOTAは行インデックスブロックがCONSTステートメントで認識)時間をカウントします。あなたは便利な列挙を定義するときイオタは、定義を簡素化することができます使用します

const (
        n1 = iota //0
        n2        //1
        n3        //2
        n4        //3
    )

使用_スキップ値

const (
        n1 = iota //0
        n2        //1
        _
        n4        //3
    )

iotaキューをジャンプする中東声明

const (
        n1 = iota //0
        n2 = 100  //100
        n3 = iota //2
        n4        //3
    )
    const n5 = iota //0

ここで段数(定義<<左シフト演算によって表される、1<<10から左に10のバイナリ表現を表す、すなわち1なった10000000000、すなわち小数同様に、1024 2<<22 2左にバイナリ表現の表現、及びなる101000、即ち小数8)

const (
        _  = iota
        KB = 1 << (10 * iota)
        MB = 1 << (10 * iota)
        GB = 1 << (10 * iota)
        TB = 1 << (10 * iota)
        PB = 1 << (10 * iota)
    )

複数iota行の定義

const (
        a, b = iota + 1, iota + 2 //0+1,0+2
        c, d                      //1+1,1+2
        e, f                      //2+1,2+2
    )

おすすめ

転載: www.cnblogs.com/guotianbao/p/12090323.html