画像(logo)

HOME/[C言語 入門]小学生でもわかるC言語2 目次/四日目 ポインタ

広告

[C言語 入門 小学生でもわかるC言語2]
四日目 ポインタ

広告

↓2016年02月29日発売↓

12歳からはじめる ゼロからのC言語 ゲームプログラミング教室

目次へ戻る

ポインタ

今回からポインタの解説をしていきたいと思います!

注意

ポインタは直接コンピューターの内部に触れていくので、もし間違った命令をしてしまうと、プログラムの暴走、データの破損などもありえますのでそのへんは自己責任でお願いします!

「わかりやすく!」がテーマ

これからする説明はいろいろ複雑なお話をできるだけ省略して、

プラス少々味付けして説明しますので、正確さを欠く場合もあるかと思いますがそこはお許しください!

保存する場所

例えば

int suji = 10;

と変数「suji」を宣言したとして

この変数「suji」はコンピューターのどこかに保存されてるワケですよね。

このコンピューターがいろいろなデータを保存している場所の事を「メモリ」といいます。

↓メモリ↓

画像(ce_4_1)

こんな感じで規則正しく並んでます。

番号のふってある下駄箱とかロッカーみたいなものを想像するとわかりやすいかもしれません。

そしてロッカーでいうところの番号にあたる部分を「メモリアドレス」っていいます。

上の図で言うとメモリアドレス2番地のデータは「33」って事ですね。

そしてこの「メモリアドレス」そのものを保存するのがポインタといいます。

「int」や「char」と同じく変数の一種でポインタ変数ともいいます。

広告

メモリアドレスを表示

では試しにメモリアドレスを表示してみましょう。

/*四日目 プログラム1*/
#include <stdio.h>

int main(){
	int suji = 10;
	printf("変数「suji」のメモリアドレス = %x\n",&suji);

	return 0;
}

■実行結果■

画像(ce_4_2)

「112f8e0」と謎の英数字が並んでいます。

実はこの謎の英数字こそがメモリアドレスになります。

そして何度も言いますがこの変数「suji」なんかのメモリアドレスを保存していろいろ使っていきましょう!というのがポインタになります。

ところで

「俺のコンピューターは違う英数字が並んだぞ!」

という方いると思います。

これはコンピューターはその時空いているメモリに保存する為、違う結果になります。

本棚に新しく買った本をしまう時って前までに買った本があるから毎回少し違う場所にしまいますよね。

そんな感じです。

話をもとに戻します。

変数のメモリアドレスを知りたい時は頭に「&」をつけます。

この「&」どこかで見たような記憶がありますよね?

そうです!関数「scanf()」の時にも変数の頭につけてました!

このへんについては次回からすこしずつ説明したいと思います。

そして結果のメモリアドレスを表示する時は

「%x」

を使います。これは「%d」なんかと同じで16進数で表示したい時はこの「%x」を使います。

16進数?

というのは数字の進み方の一つです。16までいったら2ケタになります。

わかりずらいですよね。

普通に使うのは10進数といいます。

10までいったら2ケタになります。

0123456789→10

9の次に2ケタになってます。

これと同じように16でケタがあがります。

0123456789abcdef→10

10以上を表す数字がないので代わりにa〜fを使います。

という事を踏まえた上でさきほどの結果を見てみると

「112f8e0」

ワケわからんですね・・・。

でも大丈夫です!

今はアドレス計算をする事なんてまずないので

「アドレスを表示する時は「%x」を使って16進数で表示する」

という事だけ覚えてれば大丈夫です!

今回はこのへんで次回、実際にポインタを使っていきましょう!

次回

五日目 ポインタ2

□ページの先頭へ□

□目次へ戻る□

□HOME□

広告

↓2017年06月16日発売↓

やさしいC 第5版 (「やさしい」シリーズ)

新品価格
¥2,700から
(2017/5/1 13:05時点)

↓2014年08月09日発売↓

新・明解C言語 入門編 (明解シリーズ)

新品価格
¥2,484から
(2017/5/1 13:08時点)

↓2016年02月20日発売↓

新・解きながら学ぶC言語

新品価格
¥2,160から
(2017/5/1 13:10時点)

↓2017年02月11日発売↓

C言語プログラミング基本例題88 88

新品価格
¥3,024から
(2017/5/1 13:12時点)

↓2016年12月15日発売↓

Cの絵本 第2版 C言語が好きになる新しい9つの扉

新品価格
¥1,490から
(2017/5/1 13:13時点)

↓2017年02月08日発売↓

新・明解C言語で学ぶアルゴリズムとデータ構造 (明解シリーズ)

新品価格
¥2,700から
(2017/5/1 13:15時点)