[過去ログ]
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net (1002レス)
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 [無断転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1478440682/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
880: デフォルトの名無しさん [] 2017/07/09(日) 16:06:32.28 ID:EeQkMvgZ ポインタそのものにオブジェクトってできるんでしょうか? 例えば、配列arrayのアドレスをポインタpで、ポインタpのアドレスをポインタpのポインタppで調べたんですが、 int array[3]; int *p = array; int **pp = &p; for(i = 0; i < 3; i++) { printf("&array[%d] : %d : %d\n", i, &array[i]); } &array[0] : 2293472 &array[1] : 2293476 &array[2] : 2293480 &p[0] : 2293472 &p[1] : 2293476 &p[2] : 2293480 &pp[0] : 2293468 &pp[1] : 2293472 &pp[2] : 2293476 ppが参照しているpのオブジェクトの位置が、arrayのオブジェクトのアドレスと全く同じ位置にあります。 1つのアドレスが2つのオブジェクトをもてるのか、ポインタ自体にオブジェクトは生成されないのか 他の要素でそうなってるのかわかりません。どなたか回答宜しくお願いいたします。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/880
884: デフォルトの名無しさん [] 2017/07/09(日) 16:43:15.93 ID:EeQkMvgZ >>881 これでいいでしょうか? int i; int array[5]; int *p = array; int **pp = &p; printf("array : %d\n", array); for(i = 0; i < 5; i++) { printf("&array[%d] : %d\n", i, &array[i]); } printf("p : %d\n", p); for(i = 0; i < 5; i++) { printf("&p[%d] : %d\n", i, &p[i]); } printf("pp : %d\n", pp); for(i = 0; i < 5; i++) { printf("&pp[%d] : %d\n", i, &pp[i]); } >>882 &ppでpのオブジェクトのアドレスを取得できると思ってたんですが違ったんですか? >>883 すいませんまだそれを理解するのは難しいです。 http://mevius.5ch.net/test/read.cgi/tech/1478440682/884
886: デフォルトの名無しさん [] 2017/07/09(日) 16:51:56.41 ID:EeQkMvgZ >>885 つまりポインタpは配列を参照してもp自体は配列型ではなくて単体(?)のオブジェクトだということでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1478440682/886
888: デフォルトの名無しさん [] 2017/07/09(日) 17:01:52.64 ID:EeQkMvgZ >>887 ありがとうございます!5時間以上つまってたのが一気にクリアになりました! http://mevius.5ch.net/test/read.cgi/tech/1478440682/888
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.026s