freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

難動(dòng)態(tài)分配內(nèi)存、方便使用字符串和數(shù)組、能使函數(shù)返回一-文庫吧

2025-07-29 00:56 本頁面


【正文】 /*將 3直接賦給變量 i*/ i_pointer=amp。i。 /*使 i_pointer指向 i */ *i_pointer=3。 /*將 3賦給指針變量 i_pointer所指向的變量 */ 指針變量的定義一般形式為: 基類型 *指針變量名 。 例如: int i, j, *pi, *pj。 float x, y, *p1, *p2。 指針變量的賦值:使得指針變量指向變量 指針變量名= amp。變量名 。 如: pi=amp。i。 pj=amp。j。 p1=amp。y。 p2=amp。x。 注意:指針變量只能存放指針 ( 地址 ) , 且只能是相同類型變量的地址 。 例如 , 指針變量 pi、 pj, 只能接收 int型 、 p1, p2只能接收 float型的地址 , 否則出錯(cuò) 。 指針變量的引用 在程序中,可以用: *指針變量名 代替其所指變量。如若 int i, *p。 p=amp。i。 則 i=5。 與 *p=5。 的作用相同,即可用 *p代替 i,這里 *號(hào)稱為指針運(yùn)算符(或稱為間接訪問運(yùn)算符) 例 通過指針變量訪問整型變量 main() int a, b, point_1, point_2。 a=100。 b=10。 point_1=amp。a。 point_2=amp。b。 printf(\n%d,%d\n,a,b)。 printf(%d,%d,*point_1,*point_2)。} 例 輸入 a和 b兩個(gè)整數(shù),按先大后小的順序輸出 a和 b的值 main() {int a, b, *p, *p1, *p2。 p1=amp。a。p2*=amp。b。 scanf(%d%d,p1,p2)。 if(ab) {p=p1。p1=p2。p2=p。} printf(a=%d,b=%d\n,a,b)。 printf(max=%d,min=%d,*p1,*p2)。 getch()。 } 指針變量作為函數(shù)參數(shù) 實(shí)參:變量地址或已賦值的指針變量,形參:指針變量 功能:地址傳送方式,會(huì)將改變后的值帶回。 例 通過函數(shù)調(diào)用實(shí)現(xiàn)例 。 swap(int *p1, int *p2) {int temp。 temp=*p1。 *p1=*p2。 *p2=temp。 } main() {int a, b, *pointer1,*pointer2。 scanf(%d%d,amp。a,amp。b)。 pointer1=amp。a。 pointer2=amp。b。 if(ab) swap(amp。a,amp。b)。 printf(\n%d,%d,a,b)。 } 例 輸入 3個(gè)整數(shù),按降序(從大到小的順序)輸出。要求使用變量的指針作函數(shù)調(diào)用的實(shí)參來實(shí)現(xiàn)。 void exchange(int *pointer1, int *pointer2) { int temp。 temp=*pointer1, *pointer1=*pointer2, *pointer2=temp。 } main() { int a,b,c。 printf(Input the first number: )。 scanf(%d, amp。a)。 printf(Input the second number: )。 scanf(%d, amp。b)。 printf(Input the third number: )。 scanf(%d, amp。c)。 printf(a=%d, b=%d, c=%d\n, a, b, c)。 /*排序 */ if( a b ) /*ab*/ exchange( amp。a, amp。b )。 if( a c ) exchange( amp。a, amp。c )。 if( b c ) exchange( amp。b, amp。c )。 printf(排序結(jié)果 : %d, %d, %d\n,a,b,c)。 getch()。 } 數(shù)組與指針 數(shù)組的指針 ── 數(shù)組在內(nèi)存中的起始地址,用數(shù)組名表示 賦于數(shù)組名的指針變量 例如, int a [10], *p=a (或 *p=amp。a[0])。 或者: int a [10], *p。 p= a。 通過指針引用數(shù)組元素 如果有 “ int a [10],*p=a?!?, 則: ( 1) p+i==a+i==amp。a[i]。 ( 2) *(p+i)==*(a+i)==a[i]。 ( 3) p[i]== *(p+i)== a[i]。 注意 : p+1指向數(shù)組的下一個(gè)元素 , 而不是簡單地 使 指 針 變 量 p 的值 +1 。 其 實(shí) 際 變 化 為p+1*size(size為一個(gè)元素占用的字節(jié)數(shù) ) 。 例如 , 假設(shè)指針變量 p的當(dāng)前值為 3000, 則 p+1為 3000+1*2=3002, 而不是 3001 例 輸出數(shù)組的全部元素 include void main() {int a[10],i,*p。 for(i=0。i10。i++) scanf(%d,amp。a[i])。 for(i=0。i10。i++) printf(%5d,a[i])。//下標(biāo)法 printf(\n) for(i=0。i10。i++) printf(%5d,*(a+i))。 //通過數(shù)組名計(jì)算數(shù)組元素地址,找出元素的值 printf(\n)。 for(p=a。pa+10。p++) printf(%5d,*p)。 //用指針變量指向數(shù)組元素 } 說明: ( 1) 指針變量的值是可以改變的 , 所以必須注意其當(dāng)前值 , 否則容易出錯(cuò) 。 (
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1