2020年12月16日 第13回

  1. malloc関数で,
    freeでメモリを解放せずにどんどんメモリを消費していくと,
    最終的にはどうなるのか気になった.

    実行ファイルが終了すると開放はされると思います.

  2. 課題10が難しかったので,
    家に帰って復習しようと思います.

    それが良いと思います.

  3. 関数をファイルごとに分けるとすっきりして分かりやすくなると思いました.

    その通りですね.

  4. 今日はファイルの分割のやり方でかなり手間取ってしまったので復習を必ずして使えるようにしたいと感じました.
    バッファオーバーフローで使うfgetsとsscanf の使い方があまり理解しきれていないので復習が必要だと感じたました.

    使えるようになってください.

  5. これまで学んできた知識を多く用いるようになってきて,
    難しさをさらに感じる分,
    学ぶ楽しさも感じている.
    まだまだ未熟であるが,
    どんどん成長していきたい.

    楽しいのは重要だと思います.

  6. [N]で配列を宣言する方法とmallocを使って配列を宣言する方法ではどちらを使った方がいいのか疑問に思った.

    mallocで動的に確保するようにしてください.

  7. 今回の授業では関数,
    ポインタ,
    ファイル入出力などでの特殊な場合について勉強した.
    もうすぐ最後の授業であるので難易度が一段と上がったが,
    前回までに勉強した内容から応用する課題が多かったので,
    課題8までスムーズに作成することができた.
    課題9,
    10はもっと時間をかけて勉強して作成したいと思っている.

    すばらしい.

  8. 今回の講義において,
    分割したファイルを1つにまとめられるという内容がとても勉強になった.
    この分割するという作業は,
    様々な場面で応用できそうだと感じた.

    その通りですね.使えると思います.

  9. 今日の授業では,
    関数を別のファイルにする方法をならいました.
    他人と共同作業をするときは,
    これが役に立つのだろうと思いました.
    しっかり身に着けたいです.

    役に立ちますよ.

  10. 今回の講義では様々なことを学んだ.
    動的にメモリを確保する際にmallocを用いることで確保するメモリの量を変えることができ無駄がなく良いと思った.
    バッファオーバフローでfgetsとsscanfを用いることであらかじめ指定した配列の長さ以上のものが入力されても,
    超えた分を無視できるため危険を回避でき,
    良いと思った.
    ファイルの入出力については前回習った方法より便利で使いやすいと感じた.

    理解してくれているので良かったです.

  11. 今日の授業で関数を分割する方法を学んで,
    ファイルごとにコンパイルするため,
    以前までのやり方よりソースコードのミスを発見しやすいように感じた.

    そうですね.そうかもしれません.

  12. 配列を動的につくることが難しかったです.

    わからないところは質問してください.

  13. 今日の授業を通して,
    関数化,
    そして共同作業でのファイル分割の意味が分かりました.
    今後友好的に利用していきたいです.

    有効的に,でしょうかね.

  14. fgetsとsscanfのところの流れの理解が微妙なところがあるので,
    講義動画を見直そうと思います.
    また前回のコメントBOXを出し忘れてしまい,
    申し訳ありませんでした.
    以後,
    気を付けます.

    時間内に提出してください.

  15. 実際に分けて処理をするにあたって,
    同じファイルで行うよりも整理しやすく見やすかったです.
    gccが増えるのは面倒ですが利点が勝っているように感じたので今回習ったことを活用していこうと思いました.

    活用してください.

  16. 今回の授業では,
    特にmalloc関数を理解することが難しかったが,
    面白いとも感じました.

    確かに面白い思います.

  17. 初めはよくわかりませんでしたが,
    教科書を見たらわかりました.

    よろしいと思います.

  18. 今回の講義で, mallocを使って配列のメモリ領域を動的に確保できることを知り, 今まで配列の数を実行する度に数を変えられないということを不便だと思っていたのが解消出来て良かった.

    解消できましたね.

  19. コマンドライン引数と動的配列を決めるコードをどのようにすればいいかこんがらがった

    で,できましたか?

  20. 教科書が一通り終わったので復習をしておこうと思った.

    そうしてください.

  21. バッファオーバーフローによって以前うまくコードを作れないときがあったが,
    なぜそのような動作になるのかとてもよく理解することができた.
    また,
    課題の面では課題10が今まで得た色々な知識を組み合わせてコードを作らなければいけないので,
    やや思い出すのに時間がかかった.
    なので,
    もう少し復讐をしっかりしてすぐに思い出せるようにしておきたいと感じた.

    復讐ではなくて,復習をお願いします.

  22. とても難しいじゅぎょうだったがかだいをとおしてりかいできるようにつとめる.

    難しいだけ,漢字になっていますが,それ以外も変換するようにしましょう.

  23. ファイルの分割は,
    長いソースコードを書くよりもわかりやすくなると感じました.

    その通りですね.

  24. 記憶寿命について理解することができた

    よろしいと思います.

  25. 今回新たにバッファオーバフローについて学んだので適応できるように演習していきたい.
    また,
    これまでに学んだものに関しても復習することが出来たので良かった.

    よろしいと思います.

  26. ファイルの分割について,
    関数についてのコードを別のファイルにおいておくことで,
    コードが長くならず,
    わかりやすい形になるのはすごく便利だなと思いました.

    確かに便利ですね.

  27. 今回のファイルを分けるという作業がとても一人でやるには面倒であると感じました.
    ですが,
    メイン関数の中がとてもスッキリとしてきれいに見えるので利用してみたいと思いました.

    使えるようになりましょう.

  28. 変数のスコープや記憶寿命,
    ファイルを分割の方法,
    文字列の操作,
    バッファオーバーフローについて学ぶことができた.

    よろしいと思います.

  29. 関数をさらに分けられるような感じで,
    使い方も授業でよくわかった.

    よろしいと思います.

  30. ファイルを分割できると非常に便利だと思いました.

    便利ですね.

  31. mallocを用いた動的な配列の確保が難しかった.
    次回までに理解を深める.

    そうしてください.

  32. より複雑になったが,
    今回も演習を通してよく理解していきたい.

    それが重要ですね.

  33. 課題6のgccでエラーが生じていますが,
    なんとか解決できたらと思います.

    解決してください.どういうエラー?

  34. 以前の授業で関数の宣言について軽く触れられていたが,
    なんのために使うのかが理解できなかった.
    その点が今回の授業で,
    共同でプログラミングの作業を行うのに役立つなどの理由が知れてよかった.

    よろしいと思います.

  35. 毎回#include <stdio.h>をおまじないのように書いていたが,
    ようやく意味を理解した.
    これを使えば,
    フィボナッチ数列などいちいち書くのが面倒な関数もすぐに実装でき,
    プログラムの幅が広がるように感じた.

    この内容は,すでに話したと思います.

  36. 構造体を用いたときに,
    関数などのファイルを分割するとコンパイルしたときにエラーを吐いたのですが一つのファイルに書いていた時はエラーが起こらなかったのになぜエラーが起こってしまうのでしょう

    構造体の定義をヘッダファイルに書いて,これをinclude したら良いと思います.

  37. ファイルを分割してプログラミングする方法がよく理解できた.
    帰省しているとおもうので,
    普段対面ですが,
    次回は対面で受けると思います.

    ん?結局どういうこと?

  38. 別のファイルを用いて関数を利用できることで,
    コードがとても見やすくなるだけでなく,
    将来人と共同でコードを書くときなどに役に立つと思いました.

    役に立つと思います.

  39. 前回の課題はとても難しかったが,
    今回はもっと力を入れたいと思います.

    そうしてください.

  40. 今回の課題の中に過去の課題と同じものが含まれており,
    同じ結果が得られてもプログラムの中身は全然違うのが面白いと感じた.

    良いところに気づいていますね.

  41. 前回あたりからより難しくなった気がします.
    期末テストの日程も発表されたので,
    今まで学んだことの確認をしっかり行いたいと思います.

    わからないところは質問してください.

  42. 以前配列を動的に確保する方法を模索したことがあったのですが,
    その時は自力で解決できませんでした.
    気にかかっていた点が解決できたのでよかったです.

    よろしいと思います.

  43. malloc関数とfree関数の役割について理解することができました.
    現時点でC言語に関して覚えるべきことがかなり多いので,
    早めに復習しておくべきだと感じました.

    そうしてください.

  44. 今回の課題では,
    ファイルの分割について学びましたが,
    初めは理解するのが難し買ったですが,
    演習を通して理解することができたのでよかったです.
    また,
    バッファオーバーフローの内容は配列を復習した時に疑問に思った内容だったので今回の講義でその疑問が解消できてよかったです.

    よろしいと思います.

  45. 今回の内容は理解出来たが,
    時間が空いたせいか前回の内容を忘れていた.

    それはしょうがないといいますか,復習しておいてください.

  46. 整数型や浮動小数点型で扱える数値の最大値を超えるとおかしな値が返ってくることもバッファオーバーフローと同じような理由なのだろうかと思いました.

    ではないですね.

  47. ファイルを分割するところで, 頭がこんがらがってしまい, 時間がかかってしまった. 分割することで, コードがすごく見やすくなったし, 今後必要となってくることだと思うので, スムーズにできるように練習を重ねたいと思います.到達度評価試験に向けて, すばやく正確にできるように今までやったことをしっかり復習しようと思います.

    期待してます.

  48. ソースコードを分割することで,
    自作関数の取り回しが簡単になったので良かった.

    よろしいと思います.

  49. 配列のサイズの確保の仕方の理解はできましたが,
    ファイルに出力するやり方がまだ理解しきれていないので復習します.

    はい,復習してください.

  50. ファイルを分割し,
    リンクさせて実行ファイルを作ることで,
    今までに作ったコードがより見やすくまとまったような気がしました.
    また,
    複数人で作業するときなどにも大いに役立ちそうだと感じました.

    役に立ちますよ.自分でやる場合でも.

  51. ファイルの入出力のときに,
    リダイレクトを使うと標準出力を任意の名前で保存できるのは,
    コマンドライン引数から与えるよりも,
    コード的と実行する側両者にとって便利だと思う.

    その通りですね.

  52. ファイルを分割して実行する仕組みを理解することができました.
    また,
    バッファオーバーフローが起きてしまうと危険であることがわかりました.

    すばらしい.

  53. 正直,私の頭では理解が追いつきません.毎週,この時間は目が痛くなるだけになってしまうのが少々辛いです.(私の要領が悪いだけですので,講義のスピードなどはできる方々に合わせてください.愚痴のような書き方になってしまい申し訳ありません.)

    わからない時は質問をしてください.

  54. ソース内で一貫して変数が使えればいいのにと思ってたので助かりました.

    良かったです.

  55. リダイレクトの説明が理解できなかった.

    質問してください.

  56.  今日は,
    配列の動的確保やファイルの分割,
    バッファオーバーフローなど,
    かなり幅広い知識を一気に身に着けたような感覚がありました.
    どれも複雑で,
    慎重に考えてからでないとミスを起こしやすいように感じましたが,
    汎用性も高く,
    将来でも必ず必要になってくるので,
    しっかり覚えていきたいです.

    その通りですね.

  57. 今回はファイルの分割やメモリの動的な確保など実践的な内容を学ぶことができた.
    また,
    これらがなぜ必要なのかも理解することができた.

    よろしいと思います.

  58. 関数を別のファイルに分割すると,
    main関数を含むファイルがシンプルになるのが嬉しかったです.

    シンプルになりますね.

  59. 自分でメモリを確保することで二次元配列の構造の理解が深まりました.

    すばらしい!

  60. 今までの補足をしつつ,
    新しくバッファオーバーフローの怖さを知った.
    scanfを万能だと思っていたが,
    危険性があるのに驚いた.

    万能ではないですね.どんな関数も.

  61. バッファオーバーフローについてなのですが,
    配列のサイズを”大幅”に超える入力をしたときに,
    長文のエラーがでました.
    配列のサイズを少し超えた場合は,
    警告はでませんでした.
    (だからこそ,
    危険なコードになると思いますが)この違いはなんでしょうか.

    講義でも説明したように,どの変数がメモリのどこに配置されるかは,なんともいえないからです.

  62. 関数プロトタイプ宣言に関して,
    ファイルを分割できると,
    実行したい内容を因数分解のようにまとめてコンパクトにできそうだと思った.
    また,
    stderrに関しては,
    基本実行されたときに出力されるもので,
    ファイルへの出力の際にはオプションを付けない限り出力されないというものなのかなと思っている.

    確かに因数分解っぽいのかな?

  63. 前回も思ったが,
    今までは型どおりに決められた方法で行う教科書的なモノだったが,
    今回や前回の内容はより実践的で使いこなせればよりスムーズに物事が進められると思った.

    その通りです.情報工学科ですからね.

  64. 今回の課題は,
    求められている出力は大して難しくなさそうであった.
    しかし,
    ファイルの開け閉めのプログラミングが自分にとっては難しく,
    悪戦苦闘した.

    そうですか.わからないところは質問してください.

  65. [ が { になっているというミスで,
    大幅に時間を使ってしまった.
    まず,
    そのようなミスをしないようにすることと,
    エラーが出たときに,
    そのようなところまで,
    早いうちに確認をするようにしたいです.
    まだまだ使いこなせていないものがたくさんあるので,
    しっかり復習して,
    実際使う場合でも,
    筆記形式の試験でも,
    答えられるようにしたいです.

    エラーメッセージを読んでいますか?

  66. だんだんと実用的な内容になっている感じがして楽しいです.
    マインスイーパーの課題がやっと終わりました.
    今の自分の知識で,
    このような簡単なゲームができて嬉しいです.

    終わりましたか.すばらしい!

  67. 私はファイルを分割するという処理が面白いなと思いました.
    また,
    ファイル分割時はコンパイルに注意するべきだなと思いました.

    コンパイルは大変になりますが,次回説明します.

  68. 本日の授業は予習してきたこともあり,
    先生の説明がすごく理解できました.
    マインスイーパーを終わらせられるようにしたいです.

    すばらしい!

  69. 動的に配列を確保することで,
    必要なメモリだけを確保するため,
    安全であることがよく分かりました.
    また,
    ファイルを分割してコードを作成することの利便性についても理解できました.

    理解できたのであれば,とても良かった.

  70. ファイルを分割することでコードがすっきりとまとまり, 構造を把握しやすくなったので嬉しい.

    確かに,すっきりまとまりますね.

  71. 今まで習ったところをより細かく学べた

    すばらしい.

  72. 講義ありがとうございました.
    今日の課題は難しいものが多く,
    詰まってしまったのでしっかり復習したいです.
    マインスイーパも頑張ります.

    頑張って.

  73. ローカル変数を用いたり,
    malloc関数によってメモリを動的に確保することで無駄なメモリ使用を防ぐことができるということが理解できました.
    ファイルの分割やメモリの節約について学ぶと,
    より実用的な(実際に仕事でプログラミングをするときに使う)内容に触れているなと感じました.

    その通りです.

  74. 今日の授業はよく理解できなかった.
    混乱しているので復習するようにしたい.
    マインスイーパーの課題に苦戦しているので課題11の提出期限をもう少しだけ遅らせてほしいです.

    わからないところは質問してください.

  75. ファイルが別々になっただけでややこしくなった.
    しっかり復習したいと思う.

    ややこしくなりましたか?