ポインタ
- P Pは変数Aである、と呼ばれる変数を表し、*ポインタ変数。
- なぜポインタが必要なのでしょうか?
存在の目的は、間接的なポインタアクセスです。あなたはポインタを持っていたら、我々は唯一の変数名を介してアクセスすることが変数にアクセスすることはできません。そしてp =&によって; * P = xxxは変数aは、間接的にアクセスするような方法インチ
- 二つの重要な演算子:&*と
-
そして、固定ポインタが初期化され
、それが可変であることから、その後、確かにあなたが定義して初期化することができるポインタを
最初に:最初に定義し、[割り当て
int型のp; //ポインタ変数を定義したp
のp =&A;に割り当てられ// P
秒:定義初期ながら
INT P =&; 2つの上記と同様の効果//
ポインタ* Pは、変数Pにポイントする変数へのポインタを表す場合、int型のA = 23;
int型* P;P =&。
P = 111; 111 = Aこの対応
のprintf(A "D(%)= A \ N-。")
:ポインタシンボル。ときに、指針のシンボル定義とポインタ操作、分析方法が異なっています。
int型P;定義されたポインタ変数pを、ここで定義するとき、pは、へのポインタ変数ポインタ変数Pポイントの意味の代表ではありませんPがポインタであるコンパイラに指示することを意味します。
ポインタを使用する場合は、 pはその変数へのポインタ変数p点を表します。
全変数のポインタは、本質C言語で変数へのポインタです。この変数は、通常、彼の価値はその後、我々は変数間接アクセス* p個のP点のようなAの方法で使用することができ、変数(P =&)のアドレス値を特別に割り当てられますされています。 - 本質的にポインタ変数は、可変であるポインタタイプに属するポインタ変数のタイプ
- 初期ポインタとアレイ合成
配列名:正しい値をやって、配列名の最初の要素は、ポインタに直接コピーすることができ、アレイのアドレスを示しています。
そこint型場合[5];
a及び&[0]の配列要素[0]が最初のアドレスである持って表します。
そして、&配列の最初のアドレスは語りました。
注:アドレスと配列の配列の最初の要素の最初のアドレスが異なっています。前者は、アドレスの全体の配列である配列要素のアドレスです。二つの異なるものを意味するが、値は同じです。以上を踏まえ、我々はあなたがそうアレイにアクセスする方法は2つあり、各配列要素を個別に間接アクセス経由でアクセスできるようにすることを、配列の最初の要素へのポインタを使用することができることを知っています。
例:int型A [5]; int型のP; P = A;
方法アレイが順次アクセス:[0]、A [1 ]、A [2]、A [3]、A [4]
ポインタ方法が順次アクセス: P (P + +1)(P + 2)(P + 3)(P + 4) - ++ポインタと-記号操作。
自体ポインタ変数であるため、動作させることができます。しかし、ポインタ変数ので、他の変数のアドレスが格納された値そのものであるので、値* /%、等の動作は無意味です。ポインタ変数+ 1、-1 2つのポインタ変数が意味のある減算、無意味です。+1 -1、後方格子グリッドを移動させる前方格子グリッドへのポインタのポイントを移動するポインタを表します。