#include
intmain()
;int
* ptr1,
* ptr2,
* ptr3;
ptr1 = urn;
// 把乙個位址賦給指標
ptr2 =
&urn[2]
;printf
("pointer value, dereferenced pointer, pointer address:\n");
printf
("ptr1 = %p, *ptr1 = %d, &ptr1 = %p\n"
, ptr1,
*ptr1,
&ptr1)
;// 指標加法
ptr3 = ptr1 +4;
printf
("\nadding an int to a pointer:\n");
printf
("ptr1 + 4 = %p, *(ptr1+4) = %d\n"
, ptr1 +4,
*(ptr1 +4)
);// 遞增指標
ptr1++
;printf
("\nvalues after ptr1++:\n");
printf
("ptr1 = %p, *ptr1 = %d, &ptr1 = %p\n"
, ptr1,
*ptr1,
&ptr1)
;// 遞減指標
ptr2--
;printf
("\nvalues after ptr2--:\n");
printf
("ptr2 = %p, *ptr2 = %d, &ptr2 = %p\n"
, ptr2,
*ptr2,
&ptr2)
;--ptr1;
// 恢復為初始值
++ptr2;
// 恢復為初始值
printf
("\npointers reset to original values:\n");
printf
("ptr1 = %p, ptr2 = %p\n"
, ptr1, ptr2)
;// 乙個指標減去另乙個指標
printf
("\nsubtracting one pointer from another:\n");
printf
("ptr2 = %p, ptr1 = %p, ptr2 - ptr1 = %td\n"
, ptr2, ptr1, ptr2 - ptr1)
;// 得出兩個指標相差的距離(int為單位)
// 乙個指標減去乙個整數
C語言指標基本操作
指標如果說c語言最有魅力的地方在哪,那麼毋庸置疑,非指標莫屬了。眾所周知,c語言中每個變數都有乙個記憶體位址,可以通過 進行訪問。指標是乙個變數,它的值是乙個變數的記憶體位址 注意是記憶體位址 指標表示式 type var name 其中type代表c語言的資料型別,例如 int,double,ch...
C語言有關指標的種基本操作
賦值 assignment 通常使用陣列名或位址運算子 把乙個位址賦給指標。求值 value finding 或取值 dereferencing 運用 取出指標指向位址中儲存的數值。將乙個整數加給指標 減法同理 可以使用 運算子來把乙個整數加給乙個指標,或者把乙個指標加給乙個整數。兩種情況下,這個整...
c語言指標的基本使用
指標 pointer 是c語言中乙個重點和難點,以下是對其基本使用的一些總結,適合入門的同學。除了是對自己的學習的總結之外,也希望能對大家有所幫助。與c語言其他變數類似,指標也是一種變數,只不過它與其他變數不同,一般變數是直接包含了乙個特定的值,而指標是包含了乙個變數的值所在的位址,也就是說,指標儲...