中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

梓益C語言學習筆記之指針

發布時間:2020-06-22 18:26:31 來源:網絡 閱讀:371 作者:Czyy1 欄目:編程語言

梓益C語言學習筆記之指針

一、32位平臺下,地址是32位,所以指針變量占32位,共4個字節

二、內存單元的地址即為指針,存放指針的變量稱為指針變量,故:“指針”是指地址,是常量,“指針變量”是取值為地址的變量。

char*型指針一次取一個字節,int*型指針一次取4個字節,double*取兩次4字節

數組名是指針,代表數組首元素的地址,但數組名是常量,不能修改。

三、通過指針變量可以取得數組或函數的首地址

int*p,表示p是一個指針變量,它的值是某個整型變量的地址

指針數組:int *a[10];   這是個指針數組,數組a中有10個整型的指針變量    a[0]~a[9]

數組指針:int (*a)[10];   數組指針變量,它是個指針變量。它占4個字節,存地址編號。它指向一個數組,它加1的話,指向下個數組。

函數指針:int(*p)(int,int);//定義了一個函數指針變量p,p指向的函數,必須有一個整型的返回值,有兩個整型參數。

     如: int max(int x,int y)

{

}

 

可以用這個p存放這類函數的地址。

p=max;

調用:

int  num;

num=(*p)(3,5);

四、指針變量賦值:

1,初始化賦值int a;  int*p=&a;

2,賦值語句int  a;  int *p=NULL;  p=&a;

為安全起見,指針變量未賦值不能使用,可先賦NULL

五、內存區域:

操作系統會將物理內存映射為虛擬內存,增加類似如下的分區

1,棧區stack:函數參數,返回值,局部變量(自動賦隨機值)

2,堆區heap:動態內存分配

3,全局未初始化區bss:全局未初始化,靜態未初始化數據

4,全局初始化區data:全局初始化,靜態初始化數據

5,文字常量區text:文字,常量

6,代碼區:可執行文件的二進制碼

例:

char  str[100]="hello";//hello存在字符串里,在棧區,str里的內容可以修改

char  *p="hello";//hello 存在文字常量區,屬于常量,不能修改,不能通過*p修改原字符串的值,P存在棧區,可以改變P的值使其指向別的字符串。

char  *str=(char  *)malloc(10*sizeof(char));//堆區,內容可修改

六、數組指針:int a[5]={1,2,3,4,5};   a:數組名,指向首元素地址a==&a[0];    a+1:a[1]的地址;   &a:取整個數組地址

七、數組部分初始化后,其余值自動初始化為0,例:int  a[5]={0};     char  str[100]=" ";


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿城市| 威宁| 荆州市| 英山县| 嘉定区| 醴陵市| 清镇市| 仲巴县| 姚安县| 西和县| 大新县| 赫章县| 阳东县| 固始县| 突泉县| 桃园县| 古田县| 两当县| 余姚市| 凌云县| 天气| 苍南县| 镇雄县| 探索| 呼玛县| 德保县| 琼结县| 石嘴山市| 江西省| 咸丰县| 双流县| 筠连县| 元阳县| 江门市| 焦作市| 哈尔滨市| 中超| 理塘县| 怀宁县| 横山县| 舞钢市|