アキヒロの日誌

理系大学院生の戦闘記録

c言語学習3日目

昨日と今日で学んだことを記録していきます。

 
章の名前
・学習した内容(ざっくり)
 ・内容の詳細
メモ、気になったり、知らなかった内容
→疑問に思ったこと
 
 
 
配列とポインタ
・配列とは
同じ型の変数を一つにまとめたもの
・文字列配列
文字列は複数の文字の集まりで、これを格納するには配列使う
・文字列の操作
文字列配列を編集するには文字列関数を使うと便利
・多次元配列
多次元配列をどのような実用性があるのだろうか??
・アドレスの表示
何のためにアドレスを表示させるのか
・ポインタ変数の作り方
ポインタは、変数などが格納されている位置(アドレス)を値とする変数である
・NULLポインタ
 ポインタ使用上の注意点
ポインタを利用するときは必ずその値が指し示すアドレスにデータが存在している必要がある
 ポインタの初期化:NULL
プログラム中でどこも指し示していないことをはっきりさせることが出来る
・ポインタと配列
配列の名前そのものは、配列の最初の要素を指し示すポインタの役割をしている
 例)int a[4];→*a==a[0]
 他にも、ポインタを使った配列の参照を学んだ
・動的なメモリの確保とポインタの活用
 ・静的なメモリの注意点
 →変数や配列の宣言により、「自動的」にメモリ上にそれらの領域が確保される
 →画像を扱うプログラムなどは沢山のメモリを用意する必要がある場合があり、最悪、プログラムが止まってしまうこともある
 ・動的なメモリとは
 →「プログラムの処理として」、メモリを確保する
 ・動的なメモリの確保について実際の手順を学んだ
 →①メモリの確保②メモリの利用③メモリの解放
 ・メモリの内容を操作する幾つかの関数について
  memcpy関数 メモリの内容をコピーする
 
関数
関数の定義
 ・関数について
 →処理の材料となる値のことを引数(パラメータ)、結果の値のことを戻り値(返り値)という。
 ・戻り値や引数を持たない関数の記述
 →voidを利用する
・関数の呼び出し
 ・戻り値を持たない関数の利用の仕方
 ・戻り値を持つ関数の利用の仕方
・変数のスコープ
 グローバル変数とローカル変数の使い分け
 どのように実用性があるのか??
 
 
 

f:id:programingchance:20181204171359j:plain

中間地点まで来ました!