[理工] [計概] -程式設計
void swap(int *a,int *b){
int *temp;
temp = a; //temp指向*iptr所指向的記憶體位置 &i
a = b; //a改成指向&j
b = temp; //b改成指向&i
*a += 1; //&j = 5+1 =6
*b -= 1; //&i = 10-1 =9
}
void main(){
int i = 10;
int j = 5;
int *iptr = &i; //指標iptr指向i的記憶體位置
int *jptr = &j; //指標jptr指向j的記憶體位置
swap(iptr, jptr); //Call by adrress
printf("%d %d %d %d\n", i, j, *iptr, *iptr); // 印出 6 9 6 9
}
註解是我解題的邏輯觀念
想請版友幫我更正看是否有錯
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.3.131
推
03/05 21:15, , 1F
03/05 21:15, 1F
→
03/05 21:17, , 2F
03/05 21:17, 2F
→
03/05 21:18, , 3F
03/05 21:18, 3F