PDFファイルの印刷 |
【学内】PDFファイルリーダーで印刷可能です。PDFファイルでの配布のpdfのリンクをクリックしてください。現われる講義録をで印刷してください。 |
|
PDFファイル閲覧・印刷にはPDFファイルリーダーが必要です。 |
|
無償で使用できる高性能なPDF作成ソフト |
|
|
|
第5回:ポインタと配列(PDFファイルでの配布:c5.pdf)(Web版は更新されていません、pdfをご覧下さい) |
|
目次
1.番地変数(=ポインタ)
2.間接演算子*とアドレス演算子&
3.配列
4.配列表記と番地
プログラム例(repo7.c)
プログラム例(repo8.c)
プログラム例(repo9.c)
5.ポインタ変数(番地変数)の増減と番地の増減
プログラム例(repo10.c)
プログラム例(repo11.c)
6.数値配列と番地配列
第五回目レポート
通常の数字(整数)は8ビット
か16ビットか32ビット
番地数値は16ビットか32ビット
幾つかの同じタイプのデータをまとめて取り扱えます。配列は以下の形式で定義します。
型名 配列名[要素数]
配列名の次の[
]で囲まれた数値は配列の要素数を表し、たとえば、次のように使います。
「char a[6];」:文字型の配列を6つ確保
「int n[4];」:整数型の配列を4つ確保
個々配列は
0から始まる
添え字で指定。4つの整数型配列は、
n[0]、n [1]、n [2]、n [3]
の4個。6つの文字型配列は、
a[0] 、a[1] 、a[2] 、a[3] 、a[4] 、a[5]
の6個です。また、
記憶領域に連続して配置
されます。この状況を5つの文字型配列で図示すると
のように、先頭番地(仮に、100番地)から5つ連続して配置されます。
C言語内部ではすべて番地で処理している。配列名は
配列の先頭番地
を表すことになっています。たとえば、
「 配列名a 」 「 文字列型配列を10個確保
」 ⇒ char a[10];
と宣言します。そして、コンピュータが100番地から109番地まで10個の番地を配列a用にあてがったとします:
a=数値100番地
となります。
プログラムで調べてみると
配列と番地の関係
番地の色々
これを実際にプログラムで調べる。
repo8.c 文字型整数と文字型配列の文字データとその格納番地を調べる。
repo9.c 三十四億五千六百七十八万九千十二(3,456,789,012)を符号無し長整数(8バイト)として8バイトの記憶領域に書きこむ。その後、この書きこまれたデータの先頭を[0]で指定し
- 1)文字型整数(2バイト分)読み出し数値を表示
- 2)短整数(4バイト分)読み出し数値を表示
- 3)長整数(8バイト分)読み出し数値を表示 する。
それぞれ幾つと表示されるか?(教科書84ページの6・2・1「ポインタ値の増加とエンディアン」参照)
ポインタ変数を1つ増やしたり減らしたりすると番地はどう動くか?(教科書84ページの6・2・1「ポインタ値の増加とエンディアン」参照)
ポインタを1つ進めると必ずつぎのデータの値をポイントする。
これを実際にプログラムで調べる。
通常の数値を格納する配列と番地数値を格納する配列があります。似たような形式が出てきますので注意しましょう。(教科書117ページの9・3・3「配列とポインタの初期化の類似性」も参照)
整数と番地
学生証番号と氏名を明記すること
必ず表紙を付け、このレポート問題を印刷し表紙の次にいれること
(A4レポート用紙)
の2点を提出すること。
- 2)repo7.cを参考にして変数aの代わりに番地変数(ポインタ)を用いて書き変えた
- 3)repo8.c の
- プログラム
- 実行したときの画面コピー(実行できないときもその旨のメッセージが表示された画面コピー)
- 何を調べているか、プログラムの説明
の3点提出すること。
- 4)repo9.c の
- プログラム
- 実行したときの画面コピー(実行できないときもその旨のメッセージが表示された画面コピー)
- 何を調べているか、プログラムの説明
の3点提出すること。更に、
- 教科書84ページ終わりから85ページ始めを参照して、使用したコンピュータはビッグエンディアンかリトルエンディアンかを説明せよ。
- 5)repo10.cの
- プログラム
- 実行したときの画面コピー
- なぜこのような表示になったかプログラムの説明
の3点提出すること。
- 6)repo11.cの
- プログラム
- 実行したときの画面コピー
- なぜこのような表示になったかプログラムの説明
の3点提出すること。
- 7)repo10.cを参考にして
- 繰り返されているprintf命令をfor文を使ってまとめたプログラムの
の2点を提出すること。
の3点を提出すること。 教科書65ページの4・5を参照するとよい。
|