- ベストアンサー
ポインタがわからない
C言語初心者です。 Int num; Int *p=# という変数を宣言したとします。 下は「int *型」と呼び、pは「int型オブジェクトであるnumを指すポインタ」であることはわかりました。 ですが、「int型」と「int *型」そのものの違いがわかりません。 たとえば、今読んでいるテキストに Printf(“int 型は%uバイトです。\n”,(unsigned)sizeof(int));→結果は2バイト Printf(“int *型は%uバイトです。\n”,(unsigned)sizeof(int *));→結果は4バイト 僕の環境では両方とも4バイトと結果は変わりませんでしたがテキストでは結果は上記のように変わってきてしまうようでした。これはなぜ変わってくるのでしょうか? 「int型」と「int *型」そのものを比較した際の違いがわかりません。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- Trick--o--
- ベストアンサー率20% (413/2034)
回答No.4
- ymmasayan
- ベストアンサー率30% (2593/8599)
回答No.3
- SilverThaw
- ベストアンサー率32% (260/806)
回答No.2
お礼
なるほどint *型はポインタ型でありアドレスを入れる領域 なのですべて決まった型になるのですね。 最後の文章を見てやっとわかりました^^ ありがとうございました。