// 第二十五章補充內容 15再談指標
// 15.1 指標與陣列
/*#include using namespace std;
int main(),
}; int *p1 = &ch[1][2]; //指向12的位址
int *p2 = ch[1] + 2; //指向3的位址,也就是第四個元素的位址
//最先的理解是錯的,char[1]也就是第個行的資料,然後加1,不就是ch[1][2] 12
int *p3 = ch[0]; //0
int *p4 = ch[1]; //10
cout<<*p1int main()
, ,
};coutint main()
, ,
};int *p;
for(p=a[0]; p<=a[0]+12; p++)
//for(p=a[0]; p<=&a[2][3]; p++)
, ,
};int (*p)[4], i, j;
//注意int(*p)[4]; 其中的p是乙個指標,它指向乙個具有四個元素的一維陣列,由於方括號的級別高於*,因此*p用小括號括了起來,
//表示它的級別要高於方括號,
//int *p[4]; 那麼它表示的是乙個具有4個指標的指標陣列p
p = a; //這裡p是針a[0]的值賦給了這,這樣p就表示第一行,而*p則讀取了第一行的位址,使指標先指向正確的行,然後通過列計算來確定列數
// *(*(p)+1) a[0][1]的值2
//注意: *(p+i)+j一定不要寫成了(p+i)+j; 比如說我們不要將*(p+2)+3寫成(p+2)+3,
//*(p+2)+3是首先決定了某行後,再確定某列,它與p+11相等,也就是說它指向的是第十二個元素,但是(p+2)+3
//等於(p+5)
cout<<"請輸入行號:";
cin>>i;
cout<<"請輸入列號:";
cin>>j;
cout<<"a["int main(),
}; sum(*num,6);
find(num,1);
return 0;
}void sum(int *p, int n)
cout<<"所有元素相加的總和為:"int main()
*(ch2+i)='\0';
cout<<"ch1:"int main()
*p2='\0';
cout<<"ch1:"void copy(char a, char b)
b[i]='\0';
}void main()
*pp='\0';
};void main()
int max(int x, int y)
else
return (z);
}int min(int x, int y)
else
return z;
}int add(int x, int y)
void func(int x, int y, int(*p)(int,int))
int max(int x, int y)
else
return (z);
}int min(int x, int y)
else
return z;
}int add(int x, int y)
void func(int x, int y, int p(int,int))
; show(ch, 3);
return 0;
}void show(char *name, int n)
; char **p;
int i;
for(int i=0; i<3; i++)
; int *p1[5];
int **p2 = p1;
for(int i=0; i<5; i++)
for(int i=0; i<5; i++)
return 0;
}}*/
第二十五章補充內容 16 位運算
第二十五章補充內容 16 位運算 位運算直接對二進位制位進行的運算,c 提供了可以對位進行操作的位運算子 按位與 and 按位或 or 按位異或 xor 按位非 not 取反 右移動運符 左移動運算子 按位與 運算子 補碼的設計目的如下 1 統一正零和負零 2 使減法運算轉換為加法運算 3 使負數在...
第二十五章 狂風
氈帳外寒風吹,而氈帳內卻很暖和。滕青山喝著熱奶茶,吃了大塊羊肉,還有大盆的手拌炒麵。雖然沒九州大地上菜餚精緻,可也是吃地全身舒坦。大哥!一名穿著灰色皮袍子的青年走進氈帳內。原先正和滕青山談的正高興的查布,見這人進來,不由臉色一沉 你來,有什麼事?嘖嘖。那青年瞥了滕青山一眼,當看到滕青山身上的破棉祅不...
第二十五章補充內容 7 除錯的級別
第二十五章補充內容 7 除錯的級別 include include using namespace std define debug 2 if debug 2 define assert x else define assert x if x endif if debug 3 define show...