您好,登錄后才能下訂單哦!
這篇文章主要介紹“C語言指針的詳細介紹”,在日常操作中,相信很多人在C語言指針的詳細介紹問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C語言指針的詳細介紹”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
指針是什么?
指針和指針類型
指針運算
總結:指針就是個變量,變量里面是地址,指針就是地址。(存放在指針的值都被當成地址處理)。
注:指針的大小在32位平臺是4個字節,在64位平臺是8個字節。
通過前面的知識我們知道,變量有不同的類型,如:整形,浮點型等。
同理:指針也有不同的類型。
**指針的定義方式:
變量類型 + *
比如:
int * pi=NULL char * pc=NULL short * ps=NULL long *pl=NULL float *pf=NULL double *pd=NULL …
指針類型的意義?
指針±整數
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> int main() { int n = 10; char *pc = (char*)&n; int *pi = &n; printf("n=%p\n", &n); printf("pc=%p\n", pc); printf("pi=%p\n", pi); printf("pc+1=%p\n", pc + 1); printf("pi+1=%p\n", pi + 1); return 0; }
總結:指針的類型決定了指針向前或者向后走一步有多大(距離)。
指針的解引用
指針±整數
指針-指針
指針的關系運算
注:指針相減前提,指向的地址相等
指針±整數
#define MAX 5 int arr[5]; int *p; //指針+-整數 for(p=&arr[0] ;p<&a[MAX]; ) { *p++ =0; }
指針-指針
int my_strlen(char *s)//沒有指針減指針 { char *p = s; while (*p != '\0') p++; return p - s; }
指針的關系運算
for (p = &arr[MAX]; p > &arr[0]) { *--p; }
標準規定:允許指向數組元素的指針與指向數組最后一個元素后面的那個內存位置的指針比較,但是不允許與指向第一個元素之前的那個內存位置的指針進行比較。
到此,關于“C語言指針的詳細介紹”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。