ポインタを使用する利点

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
lit

ポインタを使用する利点

#1

投稿記事 by lit » 14年前

現在C言語を学んでおりポインタの学習に入りました。ここで質問なのですが、ポインタの利点とはなんでしょうか

コード:

int x=10;
int *p;

p=&x;
例えばこのようなプログラムではポインタ変数pには値として10が代入されますよね
しかし、これはA→Cといけるものを、ポインタ変数を用いることでA→B→Cと過程を増やしているような気がして、もやもや(?)します。
プログラムとしては非常に小規模ですし、かなり初歩的な段階なのですが今のうちからその利点を知ることができたら今後スムーズに
学習できるかと思い質問させていただきました。回答していただければと思います

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: ポインタを使用する利点

#2

投稿記事 by みけCAT » 14年前

やはり動的に配列を確保できること...でしょうか。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
h2so5
副管理人
記事: 2212
登録日時: 14年前
住所: 東京
連絡を取る:

Re: ポインタを使用する利点

#3

投稿記事 by h2so5 » 14年前

サイズの大きい変数を引数に渡すときなどに、
ポインタで渡せばコピーされないのも利点ですね。

lit

Re: ポインタを使用する利点

#4

投稿記事 by lit » 14年前

回答ありがとうございます。なんとなくですが、ポインタを使用することの利点に触れられたように思います
後はポインタの学習を進めながら理解を深めていこうと思います。どうもありがとうございました

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: ポインタを使用する利点

#5

投稿記事 by softya(ソフト屋) » 14年前

ポインタのメリットは、操作する対象を可変に出来る事と一種の抽象化が出来ることになります(どちらも高度な概念ですが)。
あと構造体などのコピーよりも高速に動作することでソートや引数渡しが高速に行えます。
動的メモリ確保と絡めたなら、可変長の文字列をメモリ上に動的展開できるのもポインタならではのメリットです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る