プロが教える店舗&オフィスのセキュリティ対策術

以下C言語のプログラムです。
example10.c(プログラム名)
-----------------------------------------------
#include <stdio.h> 
struct   tanka_kosuu {
   int tanka; 
int kosuu;    
int kingaku;
};

int main()
{
struct tanka_kosuu kosuu[10];
struct tanka_kosuu kari_nyuuryoku = {-1, 0, 0};
int nyuuryoku_kosuu = 0;
while(kari_nyuuryoku.tanka != 0){
scanf("%d %d", &kari_nyuuryoku.tanka,
&kari_nyuuryoku.kosuu);
kosuu[nyuuryoku_kosuu] = kari_nyuuryoku;
nyuuryoku_kosuu++;
}
return 0;
}
--------------------------------------------------------------------------
 以上ですが!
 C言語入門編の参考書の最終あたりですが、
  以上のプログラムを、元にして解説がされていると思わる
 「構造体の宣言時の初期化」の項目を読んでいます。
 
 参考書見ながらC言語勉強する上で苦労するところが、参考書も一
からすべてを参考書に記載して説明していたのでは、ページ数の制限
 もあるだろうから、プログラムの冒頭が略されての説明が多く、
 苦労するところです。おそらく参考書の流れからしまして、以上
のプログラムを前提に解説が進めれれるいると仮定した場合
 現在わからない解説があります。
  それは、
  以上のexample10.c(プログラム名)の説明は以下です。
 
 ・構造体の宣言時の初期化
   構造体変数の場合、記憶できるデータの個数が複数になります。
 定義されているメンバの数分だけ値を記憶することができます。その
  ため、変数の宣言時に初期化を行う際には、複数の値を指定しなけ
 ればなりません。複数の値は、{}を使ってリスト形式で与えます。
  strutc kosuu kari_nyuuryoku = {-1, 0, 0};

以上の説明で、最後にあります、 
strutc kosuu kari_nyuuryoku = {-1, 0, 0}; ですが、
 example10.c(プログラム名)の中には
struct tanka_kosuu kari_nyuuryoku = {-1, 0, 0}; はありますが
strutc kosuu kari_nyuuryoku = {-1, 0, 0};はないですよね!?
 説明の意味は理解できます。
 ここでいう 
・構造体の宣言時の初期化 を説明する上で以上の2個プログラムは、
 最初の kosuuと後者tanka_kosuuが「構造体名」で、
 最初のkari_nyuuryokuと
 後者のkari_nyuuryokuは「変数名」と
 同じ意味で間違いないでしょうか?
  参考書も小・中・高校の教科書みたいに万人の人が見ないので
 小なミスはありますが・・・
 少し長くなりましたが、以上よろしくお願いいたします。

質問者からの補足コメント

  • ご回答誠にありがとうございました。
     最近はコンパイラソフトをやっと手に入れることができました。
     それは
     既にVisual Studio2013はインストール済みだったのでそちらから取れる
     「VS2013 x86 Native Tools コマンド プロンプト」を同サイトからセッ
     トアップ方法を学びました。
    シェルはMinGWを使っています。

    No.1の回答に寄せられた補足コメントです。 補足日時:2015/09/08 20:34
  • 参考書以下のP312です。
    http://gihyo.jp/book/2009/978-4-7741-4031-5
     現在技術評論社にミスかサイトからお問合わせ中です。
    今日明日中に回答が来ると思います。
     しばらくお待ちくださいませ^^

      補足日時:2015/09/09 03:38
  • 技術評論社に問い合わせて3日が過ぎましたが、まだメールでの回答が来ません_ _
    回答が来ましたら、その内容をお知らせします。
    しばらくお待ちください。

      補足日時:2015/09/11 02:37
  • まあだいたいは30日程度はかかるかもしれない。(必ず回答が寄越されるという意味では無い)
    のご回答をいただき、一度締めます。
     もし技術評論社から回答がきたところでご紹介としたいところですが!
     教えて!gooからは
     おそらく削除され可能性があります。
     質問以外の投稿なので・・
     悪しからず^^

      補足日時:2015/09/13 12:56

A 回答 (4件)

Campus2さん、早朝から熱心ですね。


思い出すこと、最初に質問を読んだのは昨年の10月での出来事。
あれから1年ですか・・・。月日の流れる物は早いものです。

コンパイラさえ導入もせず、ひたすら書籍だけを頼りに勉学に励む辺りが、常人には真似のできない取り組み方です。


>strutc kosuu kari_nyuuryoku = {-1, 0, 0};はないですよね!?
 本当にこう書いてあるのですか?
 ああそう・・・。


 何がしたいプログラムなんでしょうね?
この回答への補足あり
    • good
    • 1
この回答へのお礼

ご回答誠にありがとうございました。
 最近はコンパイラソフトをやっと手に入れることができました。
 それは
 既にVisual Studio2013はインストール済みだったのでそちらから取れる
 「VS2013 x86 Native Tools コマンド プロンプト」を同サイトからセッ
 トアップ方法を学びました。
シェルはMinGWを使っています。

お礼日時:2015/09/08 20:36

>技術評論社に問い合わせて3日が過ぎましたが、まだメールでの回答が来ません



 まあー、仕方が無いですね。
 出版社から執筆者に問い合わせを転送して内容を確認してから回答をして貰い、技術評論社がそれの質問している人へ回答として寄越してくる。

 まあだいたいは30日程度はかかるかもしれない。(必ず回答が寄越されるという意味では無い)

 先日のリンク先の出版情報に依れば2009年の出版物ではね・・・。
    • good
    • 0

> ればなりません。

複数の値は、{}を使ってリスト形式で与えます。
>   strutc kosuu kari_nyuuryoku = {-1, 0, 0};

は、strutc tanka_kosuu kari_nyuuryoku = {-1, 0, 0};
の誤植でしょう。
参考書の出版社のホームページで、正誤表が公開されている場合があります。まず、それを確認されましたか?



ご質問文最後の部分の「最初」と「最後」が、どこを指しているのかわかりにくいのですが。。。
> {
> struct tanka_kosuu kosuu[10];
> struct tanka_kosuu kari_nyuuryoku = {-1, 0, 0};
> int nyuuryoku_kosuu = 0;

上記プログラム抜粋で

tanka_kosuu が、構造体名
kosuu[10]とkari_nyuuryoku が、変数名 です。
    • good
    • 0

>第15章 構造体


>http://www9.plala.or.jp/sgwr-t/c/sec15.html


>C言語で構造体を初期化する方法Add Star
>http://d.hatena.ne.jp/iww/20090424/struct
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!