C言語のポインタ

それはポインタ正確には何ですか?

ポインタは、その値としてchar型文字の変数のような変数のアドレスへのポインタであり、のIntの値は、整数型の変数であり、アドレスポインタ変数によって表される値

名前のポインタ変数がPAS場合は、声明について取得することができます。

PAS =&passwdの 

ここではPASに割り当てられたアドレスであるpasswdを

 

 ポインタの必要性シンボル:*&

アドレス演算子(&):変数名が続き、変数&ギブのアドレス

例えば:

&ヌムnumが変数のアドレスを表し、

間接演算子(*):ここでアドレスに格納され、名前またはアドレス・ポインタに続いて、*所与のポイント値をバイナリ操作*(乗算)を表すものではないここに言うこと

例えば:

= 2;

PAS =# //ポインタポインティングnumはPAS

VPS = * PAS; //代入ポイントPASのVPSの値

上記のステートメントは、2つのVPSに割り当てられています

ポインタ宣言:

int型*パイ; // piは整数型変数へのポインタです

char *のp; // pはポインタ変数の文字へのポインタであります

フロート* P、* G; // pおよびgは、浮動小数点ポインタ変数であります

要約:タイプ識別子は可変であることがポイントのタイプを示し、アスタリスク(*)は、変数のポインタであります

         ステートメントのInt * PI; PI手段がポインタであり、int型である* PI

次に、結果を確認するためにコードの一部を書い

する#include <stdio.hの>
 ボイドチャン(INT * P、INT * Q); // ポインタ宣言
INTメイン(ボイド){
 int型 X = 5、Y = 15 ; 
のprintf(" X%=%のDy = D \のN-  X、Y); // これは、一般的な出力である 
チャン(&X&Y); // 関数がどの手段関数プロトタイプ宣言チャンパラメータQこと、代わりにその値のxとyのアドレスが渡され、Pは、したがって、それらはポインタとして宣言されなければならない、その値としてアドレスを使用します。これは、前に宣言されている 
(printfの" X1 = Y1 = D%D%\ N- " 、X、Y); 
renturn 0 ; 
} 
ボイドチャン(INT * P、INT *Q){
 int型のTEMP、
TEMP = * P;
 * = P * Q;
 * Q = TEMP; 
} 
/ * 
ときにスイッチング機能により、XおよびYは、それがXにアクセスすることができる交換、Y変数のポインタを使用して第1の機能そして*演算子は、あなたは、データを変更することができるように、対応するメモリアドレスの機能データを得ることができます

* /

結果:

 

おすすめ

転載: www.cnblogs.com/X404/p/12078062.html