前回の講義では,まずはじめにコンピューターの簡単な仕組みとメモリーの概要を説明し
た.そこで,理解しておきべき内容は次のようなことである.
-4pt
- プログラム(データと命令)は,メモリーの中に格納される.
- CPUはメモリーからデータと命令を読み込む.読み込んだ命令にしたがい,データ
を処理して,結果をメモリーに戻す.
- メモリーには,データの場所を示す整数のアドレスがある.諸君が使っているパ
ソコンでは,アドレスは32ビットである.32ビットなので,16進数で表
すと8桁である.
- メモリーのひとつのアドレスには,1バイト(8ビット,16進数の2桁)の情報を格納する
ことができる.
メモリーを理解した後,ポインターの基礎を学習した.そこでのおもな内容は,次のとお
りである.
-4pt
- ポインター変数は,アドレスを格納する変数である.
- ポインターの宣言には,型名とアスタリスク(*)を付ける.
- 変数のアドレスを取り出すには,変数名の前にアンパサンド(&)をつける.
&はアドレス演算子である.printf()関数でアドレスを表示させると
きには,変換指定子%pを使う.
- ポインターが示しているデータの値を取り出すためには,ポインター変数の前に
アスタリスク(*)をつける.*は間接参照演算子である.
本日の学習の範囲は,教科書 [
1]のp.276-287である.
学習のゴールは,以下のとおりである.
-4pt
- ポインターを使うためには,初期化が必要である--ことが分かる.
- 可能なポインターの演算は,整数の加算と減算のみである.1加算や減算はその
データのバイト数分のアドレスが移動する.これらのポインターの演算
が分かる.
- 配列とポインターの関係が分かる.
- 文字列リテラル(定数)の使い方が分かる.
ホームページ:
Yamamoto's laboratory著者:
山本昌志
Yamamoto Masashi
平成19年2月16日