C語言中指標的使用方法

2021-08-24 20:33:25 字數 1186 閱讀 9729

1.使用場景

#include#include int main(int argc, char const *argv)

; int *b,*d;

int c=2;

int *e=a; //e指向a陣列首位址

//*b=2; 無法直接初始化

//printf("%d\n", *b);

e=e+2; //移動兩個位址單元

d=&c; //d指向c的位址來表示值

c=4; //修改原c變數的值,d指標的值會發生改變

b=(int *)malloc(sizeof(int));//為b分配乙個int型空間來直接儲存值

*b=2;//分配空間後可以直接賦值了

printf("this is e,b,c,d :%d %d %d %d\n",*e,*b,c,*d);

return 0;

}

2.型別說明

(1)int *a :表示乙個指向int型變數的指標,指向的是變數的位址單元

(2)char *b:表示乙個指向char變數的指標

*a表示的是這個指標指向位址的值,a為此指標本身的位址,這點要明確,一般用*(a+1)、*(a+2)來表示值,如

int nums[5]=;

int *a=nums;

printf("%d %d %p\n",*a,*(a+1),a);

輸出為:

(3)結構體指標

typedef struct nodepnode,*linklist;

linklist p; 

p=(struct node*)malloc(sizeof(struct node));

3.指標的運算

指標指向變數位址,若原變數的內容發生了變化,它本身也會發生變化,指標之間的運算一般為值運算和位址運算

(1)值運算:直接通過*運算方式,像a+*(a+1),結果為第乙個元素與第二個元素相加。

int nums[5]=;

int *a=nums;

int nums[5]=;

int *a=nums;

a=a+2;

printf("%d\n",*a);

結果輸出

C語言中指標大全

1.使用二維字串儲存字串的時候會出現儲存浪費的情況,使用指標陣列儲存則不會 char s for i 0 ifor i 0 i 3 i 2.指標陣列作為函式引數傳遞多個字串給另乙個函式。指標陣列是乙個陣列,只是裡面存放了指標 void str sort char s,int n n代表指標陣列的長度...

C語言中指標的操作

c語言中指標操作主要有以下幾種 指標減去乙個整數 模擬上面的4。指標自減 模擬上面的5.求差值 通常對指向乙個陣列兩個不同元素的指標求差值,代表兩個元素位置的差值。示例 include int main void int ptr1,ptr2,ptr3 ptr1 urn ptr2 urn 2 prin...

C語言中指標的加減運算方法示例

參考文章,值得一看 char arr 3 printf arr n d n d n d n arr,arr 1,arr 2 char parr 3 printf parr 程式設計客棧n d n d n d n parr,parr 1,parr 2 從結果可以看到,字元陣列每個元素佔1位元組,字元指...