• ベストアンサー

平成17年度春の午後問題について教えてください

ttp://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H17a2/pm06.html の問題なのですが、空欄dが分かりません。 char_listはvoid print_string 関数内でアドレスで 受け取り、int word_width 関数でもアドレスで受け取っていると思うのですが、違うのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

>ポインタなのに配列として扱っているのが疑問なんです。 #1でも述べたように[]は演算子なので、 char a[]={'a','b','c'}; char *b; b=a; printf("a[1]=%c\n",b[1]); のように扱うことができます。 この場合 b[1]は、*(b+1)と同じ意味です。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

イ *str != char_list[idx].char_p だと思いますが >char_list[idx] の使い方が疑問である(ポインタ(アドレス)なのに、配列として使っている)ということでしょうか 基本的に アドレス[]の様に使って相対アドレスでアクセスできます。 []は必ずしも配列というわけではなく、Cでは単なる演算子である為にそのように使用できます。

yuyakiyo
質問者

補足

解答ありがとうございます。 そうです、ポインタなのに配列として扱っているのが 疑問なんです。 調べてみるとポインタ配列というのがあるみたいなのですが、 char *name[3]{ "tarou", "jirou", "sirou", }; のようなやりかたと同じなのでしょうか?これの仕組みもよく分からないのですが。

関連するQ&A

  • 基本情報技術者検定の平成13年度秋期午後問題について

    http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H13b2/pm06.html この問題のポインタの使いかたについて疑問があるのでお願いします。 まず、12,13行目からmlstr=mlstrのアドレスとして扱っています。そして15行目でmlstr = parse_ml_data(mlstr + 1, 1);関数を呼び出し そして16行目のchar *parse_ml_data(char *mlstr, int level)関数でmlstrのポインタとして受け取っています。 よって、この関数内では12,13行目で使われているmlstrのポインタを表すので、mlstr=mlstrの値を表すのではないかと思うのですが、22行目などからアドレスで扱っているようになっています。 ポインタについていまいち自信がもてないので、よろしければどこか間違って解釈いるところがれば、教えてください。お願いします。

  • 平成14年秋 問10 四角形 C言語

    http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H14b2/pm10.html 手がかりはどのように 求めればいいのでしょうか? 手が届かないです

  • CASLの問題

    http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H11a2/pm10.html で被乗数を14ビットシフトの意味を理解できなく この問題を解けません どなたかご教授を

  • トランザクション処理性能の問題

    このサーバの TPS の上限値は” ”の表現で 上限値は何を意味するのでしょうか? どなたか 解説を? http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H13b2/pm03.html

  • 基本情報午後問題で解けない問題があります。

    こんにちは。平成15年度 基本情報処理技術者試験 午後問題 問2 通信ネットワークに関する問題が解けずに困っています。 問題文が長いのでここに載せることができません。 下記URLから問題文を見ることができます。 http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H15b2/pm02.html googleで調べたのですが、午後問題に関しては回答はありますが解説まで載っているページはなかなか無く、どなたかご指導いただけたら、と思っています。 よろしくお願いします。

  • 基本情報について

    このサイトの問4の3設問ができなくて困っています。わかるかたご教授よろしくお願いします。 http://www.rs.kagu.sut.ac.jp/~infoserv/j-siken/H11a2/pm03.html

  • 関数での配列の扱いかたについて教えてください

    http://www.rs.kagu.sut.ac.jp/~infoserv/j-siken/H17a2/pm10.html この問題の10行目の void make_fare_table(int num, double *dist_list, COSTUNIT *cost_list, int **fare_table ) { の * dist_list ところなんですが、関数で配列を受け取るとき 文字列の場合は *dist_list ですが、 この問題の場合 dist_listは距離の配列、つまり数値の配列だから、dist_list[]で受け取るのだと思うのですが *dist_listとなっているのは、なぜでしょうか?

  • 基本情報技術者 平成14年 秋 問9

    基本情報技術者 平成14年 秋 問9 http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H14b2/pm09.html 6行目の CPA GR1,DIV,GR2 の処理の結果がわかりません。 3行目でGR2には「3」が設定されています。 DIV(22行目)から、3つ移動すると25行目を指すということでしょうか? ご教授をお願いします。

  • 基本情報技術者検定の平成13年秋の午後問題について

    基本情報技術者検定の平成13年秋の午後問題で質問です。 http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H13b2/pm02.html 上のurlの問題で「整数値を、指定された書式に従って10進数の文字列に変換する」というアルゴリズムを行うのですが、この問題の意図することがわかりません。 普通の問題はn進数を10進数に変換せよ、といった内容ですが、参考書の解答を見ても、10進数から10進数に変換しているようですし、それとも10進数の数値を(符号を含め)最大4桁の数値かどうかを判定しているということなのでしょうか?

  • インクリメント

    情報処理の問題で一つわからない点があります http://www.rs.kagu.tus.ac.jp/infoserv/j-siken/H19a2/pm10.html 上記HPの「 d 」の答えなのですが rank++ と rank = i + 1 答えはどちらでもかまわないのではないでしょうか? インクリメントを使っての答えは間違いとなりますがどうして??? 教えてください

専門家に質問してみよう