ポインタ

2273 ワード


ポインタ
ポインタは変数が別の変数のアドレスである変数、すなわちメモリ位置の直接アドレスです.任意の変数または定数のように、任意の変数を格納するためにそれを使用する前にポインタを宣言する必要があります.ポインタ変数宣言の一般的な形式は−
文法
type * var name ;

example:
include


int main ()
int var = 20 ;
int ip ;
IP =& var ;
printf ("var変数のアドレス:% x\n "、& var );
/*ポインタ変数に格納されているアドレス*/
printf ("IP変数に格納されたアドレス:% x\n ", IP );
/*ポインタを使用して値にアクセス*/
printf ("ip value *変数:% d\n ", * IP );
0を返す


ポインタの種類
異なる種類のポインタがあります−
Null pointer

Void pointer

Wild pointer
1 . NULLポインタ:
ポインタ宣言時にNULL値を代入してNULLポインタを作成します.
このメソッドは、ポインタにアドレスを割り当てない場合に便利です.NULLポインタは常に0を含んでいます.
文法
始まります.
整数データ型のポインタpを宣言します.
初期化* p = null.
"ポインタの値は"です.
ポインタpの値を出力する.
エンド.

example:
include
int main() {
int *p= NULL;//initialize the pointer as null.
printf("The value of pointer is %u",p);
return 0;
}


2 . voidポインタ
データ型を関連付けられていないポインターです.voidポインタはどんなタイプのアドレスを保持することができて、どんなタイプにでもtypecastでありえます.
これはジェネリックポインタとも呼ばれ、標準的なデータ型はありません.
これは、キーワードvoidを使用して作成されます.
文法
始まり
整数型のデータ型を宣言します.
A = 7を初期化します.
float型のデータ型を宣言します.
b = 7.6を初期化します.
ポインタPをvoidと宣言します.
Pポインタを初期化します.
「整数変数is」を出力します.
使用するポインタpの値を出力します.
PポインタをBに初期化します.
"float変数"を出力します.
ポインタPを使ってBの値を出力する
エンド.

example:
include
int main() {
int a = 7;
float b = 7.6;
void *p;
p = &a;
printf("Integer variable is = %d", ( (int) p) );
p = &b;
printf("\nFloat variable is = %f", ( (float) p) );
return 0;
}


ワイルドポインタ:
ワイルドポインタは初期化されていないポインタとも呼ばれます.いくつかの任意のメモリの場所を指し、プログラムをクラッシュさせるか、ひどく振る舞うかもしれないので.
文法
含める
int main () {
int * p ;/野生の指針
printf ("\n % d ",* p );
0を返す

example:
include
int main(){
int *p; //wild pointer
printf("\n%d",*p);
return 0;
}