忍者ブログ
ADMINWRITE
日々の覚え書き。 まだまだぴよぴよ。 最近は勉強過程をさらして恥かいてます。
[99]  [98]  [97]  [96]  [95]  [94]  [93]  [92]  [91]  [90]  [89
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

昨日の話の続き。

GOの課題が師匠からでましたので、
師匠に解説してもらって作りました。
(自力ではない

---☆おだい---------------------
1から10まで足して、55を表示するプログラムを作成する。
rangeと配列を使う。
-------------------------------------

rangeはforeach(C#、他)みたいなもんらしいです。
 
で、作ったプログラムが、これ↓。
先にいっときますが、エラーでます


package main

import (
 "fmt"
)

func main() {
 
    d := [10]int{1,2,3,4,5,6,7,8,9,10}
    sum := 0

    for i , v := range d {
    sum += v
 }

     fmt.Printf("合計 %v\n",sum)
}



コピペしたら、インデントがぐっちゃぐちゃになってしまった。。。。

で、エラーの内容は、

 i declared and not used

って、でました。
悩むこと○分。

for i , v := range d ~

のiが、使ってないから消せよ!っていうことらしいとわかりました。
VC++だったら警告ででるのにぃ。
というわけで、修正です↓


package main

import (
 "fmt"
)

func main(){
 
 d := [10]int{1,2,3,4,5,6,7,8,9,10}
 sum := 0

 for _ , v := range d {
  sum += v
 }

 fmt.Printf("合計 %v\n",sum)

}


"i"が"_"に置き換わりました。
("_"は、ブランク識別子という御名前だそうです)
これで、エラーは消えて、無事に実行できました。結果は、

合計 55

と、表示されました!!
わーい。
あ、もちろん、最初のソースでも、iをどこかで使えばエラーは出ません。

ははぁ~。

一つ賢くなりました。



rangeから値をもらう変数が2つあるというのが、微妙に気持ちわるい。。。
(しかし、便利)
 

PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
最新コメント
[12/13 sakushisyou]
[10/19 sakushisyou]
[08/26 ゆうひ]
[08/13 sakushisyou]
[11/23 ゆうひ]
最新トラックバック
プロフィール
HN:
ゆうひ
性別:
非公開
自己紹介:
はやく一人前になりたーい(謎)
成長していければいいな。。。
成長してるよね?
自称・メイドプログラマー(修行中)
料理の味付けはおおざっぱ。
バーコード
ブログ内検索
カウンター
クリック募金♪
世界樹の迷宮

Designed by 湯月   Material by ウタノツバサ
Copyright c [ ゆうひ堂本舗 ] All Rights Reserved.

忍者ブログ [PR]