HelloWorld分析
package main//包名
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
- package mainは、パッケージ名を定義します。ソースファイルの最初の行で、このファイルが属するパッケージを指定する必要があります。これがメインパッケージになりました。同時に、パッケージmainは独立して実行できるプログラムを表し、すべてのGoアプリケーションにはmainという名前のパッケージが含まれている必要があります。
- import "fmt"は、このプログラムが使用する必要のあるパッケージをGoコンパイラに通知し、fmtパッケージは入力と出力に使用されます。パッケージを同時にインポートするために使用する必要があります。
- func main()は、プログラムのエントリポイントです。(init()
関数がある場合は、関数が最初に実行されます。)同時に、 go言語の左中括弧は1行だけを占めることはできず、セミコロンもありません。 - fmt.Println( "Hello、World!")は、文字列をコンソールに出力し、末尾に改行文字
\ nを自動的に追加できます。また、C形式の出力Printfもサポートしています。
2つの変数タイプ
の種類 | デフォルト | 長さ |
---|---|---|
ブール | false | 1 |
バイト(uint8のエイリアス) | 0 | 1 |
ルーン(int32、Unicodeコードを表す) | 0 | 1 |
uint、uint | 0 | 4または8 |
uint8、uint8 | 0 | 1 |
uint16、uint16 | 0 | 2 |
uint32、uint32 | 0 | 4 |
uint64、uint64 | 0 | 8 |
float32 | 0.0 | 4 |
float64 | 0.0 | 8 |
complex64(複数形) | 8 | |
complex128 | 16 | |
uintptr(ポインター) | なし | 4または8 |
ストリング | 「」 |
3つの定義変数
goの定義はc ++とは異なり、変数を宣言する一般的な形式はvarキーワードを使用することです。
var変数名変数タイプ
vara int
同時に、自動型推定がサポートされていますが、変数を定義するときは、同時に明示的に初期化する必要があります
a := 8
小さな例
package main
import "fmt"//导入包必须使用,否则编译报错
func main() {//g语言中的 ‘{’ 不能独占一行
var a int;//定义了变量必须使用,否则编译报错
fmt.Printf("a= %d\n",a)
b := 5
fmt.Printf("b= %d\n",b)
var p *int
if(p == nil){ //空是nil
p = &a // p指向a
fmt.Printf("p= %d\n",*p)
}
}
結果