2012年08月27日

120825にGDGKOBEのGo言語勉強会で発表してきた

資料です。
Go言語の特徴の一つであるスライス(slice)についてです。

サンプルコード
https://github.com/kwmt/120825_GDGKOBE_GO/tree/master/example

Go Playground
http://play.golang.org/

タグ:golang
posted by やし at 00:42 | Comment(0) | golang | このブログの読者になる | 更新情報をチェックする

     このエントリーをはてなブックマークに追加 このエントリーを含むはてなブックマーク

2012年08月09日

golangのvimのシンタックスハイライトの設定方法

golangのvimのシンタックスハイライトの設定方法は

$GOROOT/misc/vim/readme.txt

に記載あり。

またubuntuでは

「Sorry, the command is not available in this version: syntax on」

と出たので、下記を参考させてもらったら、できた。
http://www.kano4.com/105


vimでgolangのシンタックスハイライト


以上。
タグ:golang
posted by やし at 22:57 | Comment(0) | golang | このブログの読者になる | 更新情報をチェックする

     このエントリーをはてなブックマークに追加 このエントリーを含むはてなブックマーク

2012年08月06日

個人のメモ:さくらVPSの初期にしたこと。

さくらVPSにカスタムOS(Ubuntu12.04)をインストールした。

それからvpsに接続するsshの設定を忘れそうなので、どこのサイトを参考にしたかぐらいはメモっとく。

タグ:VPS さくらVPS
posted by やし at 07:14 | Comment(0) | VPS | このブログの読者になる | 更新情報をチェックする

     このエントリーをはてなブックマークに追加 このエントリーを含むはてなブックマーク

2012年07月09日

golangで文字列を数値に変換するには?

与えられた文字列が数値と判断できる場合に、数値として返して欲しい時、次の関数がある。

strconvパッケージの

func ParseInt(s string, base int, bitSize int) (i int64, err error)
s:数値に変換したい文字列
base:何進数とか(10進数なら10)
bitSize:何ビットとして認識してほしいか
    (0, 8, 16, 32, 64はそれぞれint, int8, int16, int32,int64に対応)

このParseIntをラップして短くしてるのが、

func Atoi(s string) (i int, err error) {
	i64, err := ParseInt(s, 10, 0)
	return int(i64), err
}

です。ParseIntの戻り値はint64でしたが、Atoiの戻り値はintです。

使い方は、こんな感じ。

i, _ := strconv.Atoi("100")
j, _ := strconv.Atoi("200")
i = i+j  // i,jはintなので計算ができる
fmt.Printf("i=%d\n", i)
// i=300

参考

Package strconv
http://golang.org/pkg/strconv/
タグ:golang Go言語
posted by やし at 21:22 | Comment(0) | golang | このブログの読者になる | 更新情報をチェックする

     このエントリーをはてなブックマークに追加 このエントリーを含むはてなブックマーク

2012年07月07日

golangで数値を文字列に変換するには?

import "strconv"
strNum := strconv.FormatUint(num, 10)

FormatUint関数の引数 numuint64で、10は何者かよく分からなかったけど、10進数のこと。strNumstringとなります。

2つ目の引数10が良くわかないと書いたけど、下記のコードで確かめたら10進数だとわかった。例えば、1つ目の数値を123とします。

package main

import (
	"fmt"
	"strconv"
)

func main(){
	fmt.Println("(i, strNum)")
	for i:=2; i < 37; i++ {
		strNum := strconv.FormatUint(uint64(123), i)
		fmt.Printf("(%d, %s)\n",i,strNum)
	}
}

結果、下記のようになった。

(i, strNum)
(2, 1111011)
(3, 11120)
(4, 1323)
(5, 443)
(6, 323)
(7, 234)
(8, 173)
(9, 146)
(10, 123)
(11, 102)
(12, a3)
(13, 96)
(14, 8b)
(15, 83)
(16, 7b)
(17, 74)
(18, 6f)
(19, 69)
(20, 63)
(21, 5i)
(22, 5d)
(23, 58)
(24, 53)
(25, 4n)
(26, 4j)
(27, 4f)
(28, 4b)
(29, 47)
(30, 43)
(31, 3u)
(32, 3r)
(33, 3o)
(34, 3l)
(35, 3i)
(36, 3f)

ソースにもあるけど、ii < 2またはi > 37だとpanicになります。

タグ:golang
posted by やし at 00:00 | Comment(1) | golang | このブログの読者になる | 更新情報をチェックする

     このエントリーをはてなブックマークに追加 このエントリーを含むはてなブックマーク
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。