私達を次の声明を検査することを許可しなさい:
int var_x;
int* ptrX;
var_x = 6;
ptrX = &var_x;
*ptrX = 12;
printf("value of x : %d", var_x);
最初のラインにより編集者は整数のために記憶のスペースを確保する。 第2ラインは編集者をポインターを貯えるためにスペースを確保するために告げる。
ポインターは住所のためのストレージロケーションである。 第3ラインはscanfの声明思い出させるべきである。 住所「及び」オペレータは編集者をvar_xを貯えた場所に行くように告げ、次にptrXにストレージロケーションの住所を与える。
星じるし*変数の前に…編集者をポインターを参照解除するように言い記憶に行く。 それからその位置で貯えられる変数に割り当てを作ることができる。 変数を参照し、ポインターを通してデータにアクセスできる。 私達をポインターの例を見ることを許可しなさい:
/* ポインターの使用の実例 */
#include <stdio.h>
int main()
{
int index, *pt1, *pt2;
index = 39; /* 数字 */
pt1 = &index; /* 索引の住所 */
pt2 = pt1;
printf("The value is %d %d %d\n", index, *pt1, *pt2);
*pt1 = 13; /* これは索引の価値を変える */
printf("The value is %d %d %d\n", index, *pt1, *pt2);
return 0;
}
プログラムの出力は次の通り表示される:
The value is 39 39 39
The value is 13 13 13 |
|