Obj.C

C++の学習:一歩前進二歩後退

遅々として進まない感じです。基本中の基本の勉強からスタートしていますから、ABCの次になにがあるのか、考えが及ばないのは当然のことです。

1. コンソール入力と出力

  • #include <iostream> 組み込み
  • cout << 出力
  • using namespace std std::の省略
  • cin >> 入力
    ※ スペースで自動的に区切られる➡対応方法は?
  • 表示方法
    ※ スペースに伴う入力の処理の仕方はエリア定義を学習したあとでもう一度戻って来て再学習すること。

2. エリア定義

  • char : 1byte
  • int : 2byte
  • long : 4byte
  • 配列定義例 char table50[128][50]; 128 byte x 50
  • メモリの静的割当
    ※ メモリの動的割当➡対応方法は?
  • #include <string> ➡ ※ charとの違いを調べること
  • 文字列の長さは、strlen()で知ることができる。nullを除く長さ。
  • 動的にエリアを確保する場合、malloc(strlen(dynambuffer)+1)のように+1 byte足さないといけないことに注意。
  • string
    ※ さらに詳細について学習すること。

3. メモリのダイナミックアロケーション

  • メモリのアロケーションができないときが問題
    ➡回避方法?
  • free()で確保したメモリを解放する必要がある。ただし、プログラム終了と強制終了で自動的に解放される。多分、ある許容量の動的エリアがあるとき、これを超えてメモリ確保はできないし、これ以内であれば、解放しながら使わないと動的確保はできないよということではないか。要フォロー。

エリア定義