vc-3. ダンプリスト,配列
Visual Studio C++ の機能と操作演習,
5回)
1
金子邦彦
https://www.kkaneko.jp/cc/vc/index.html
目次
3-1. ダンプリスト
3-2. 配列
3-3. 変数の変化,プログラム実行の流れ
2
3-1 ダンプリスト
3
4
メモリバイト(8ビット)単位に区切られている
バイトには0から始まる通し番号が付けられてい
る。これがアドレス番地ともいう)
01
00
00
00
02
00
00
00
03
00
メモリ内のデータは
アドレス
0 1 2 3 4 5 6 7 8 9
メモリとアドレス
ダンプリストの例
5
アドレス メモリの中身
バイト単位で区切られて表示.
表示は16進数
ダンプリストの例
6
アドレスは
0x002f8130
アドレスは
0x002f8131
アドレスは
0x002f8132
クイズ
7
アドレス メモリの中身がバイト単位
で区切られて表示
メモリの中身
を文字に置き換え
て表示
このアドレス
は?
このアドレス
は?
クイズの答え
8
アドレス メモリの中身がバイト単位
で区切られて表示
メモリの中身
を文字に置き換え
て表示
0x002F814C
左のアドレス
表示で分かる
0x002F8150
これは 0x002F814C 4 足した値
つ右隣
3-2 配列
9
10
3-2 配列
配列は、同じ型の要素の並び
0から始まる番号添字)が付いている
コード化されて、メモリに格納されるとき、
要素が順にメモリ格納される
各要素のサイズは同じ
配列
11
80
60
40
20
30
50
00
00
00
3c
00
00
00
28
00
00
00
14
00
00
00
数値
10進数)
4バイトの数値にコード化した場合
1e
00
00
00
16 進数
C/C++ での配列と繰り返し
12
i の値は 0, 1, 2, 3, 4
変化し,全部済んだら終わる
繰り返す処理
パソコン演習
Visual Studio 2015 を起動しなさい
Visual Studio 2015 で、Win32 コンソールアプリ
ケーション用プロジェクトを新規作成しなさい
13
プロジェクトの「名前」は何でもよい
Visual Studio 2015 のエディタを使って、ソース
ファイルを編集しなさい
14
行追加
15
ビルドしなさい.ビルドのあと「1 正常終了、
失敗」の表示を確認しなさい
表示されなければ、プログラムのミスを自分で
確認し、修正して、ビルドをやり直す
16
Visual Studio 2015 で「int i」の行に、ブレークポ
イントを設定しなさい
17
int i;」の行をマ
ウスでクリック 「デバッグ」
ブレークポイントの
設定/解除
ブレークポイント
が設定されるので確認
赤丸がブレークポイン
トの印
Visual Studio 2015 で、デバッガーを起動しなさい.
int i;」の行で、実行が中断することを確認しな
さい
あとで使うので、中断したままにしておくこと
18
「デバッグ」
デバッグの開始
int i;」の行で実行が
中断している
int i;」の行で、実行が中断した状態で、変数の
値を表示させなさい.手順は次の通り.
19
次ページに拡大図
①「デバッグ」
「ウインドウ」
ローカル
変数名と値の対応表が
表示される
20
9. ローカルウインドウ配列 yの先頭アドレスを調べなさい
y の先頭アドレスは、起動のたびに
変化する可能性がある.
0x」が付いているのは16進数
メモリの中身を表示させなさい.手順は次の通り.
21
①「デバッグ」
「ウインドウ」
メモリ「メモリ1」
メモリの中身がダンプ
リスト形式で表示される
22
配列 y の先頭アドレス
配列 y の先頭アドレスを、
メモリウインドウ「アドレス」のところに書き写して,
Enter キーを押す
0x00229150」のように
頭に 0x を付ける
23
メモリウインドウに、配列 y の中身が表示される
ので確認する
00 が並んでいる
ステップオーバーの操作を行いながら、メモリの
中身の変化を確認しなさい.
24
「デバッグ」
「ステップオーバー」
(あるいは F10 キー)
次のことを再確認しなさい
25
16進数
50
3c
28
14
1e
10進数
80
60
40
20
30
最後に、プログラム実行の再開の操作を行いなさ
い。これで、デバッガーが終了する。
26
「デバッグ」
続行