void minmax(int a[], int len, int *min, int *max) {
int i;
*min = *max = a[0];
for(i = 1; i < len; i++) {
if(a[i] < *min) {
*min = a[i];
}
if( a[i] > *max) {
*max = a[i];
}
}
}
//传入min, max地址 通过函数返回了需要的min, max
//传入的参数实际上是要保存待会结果的变量
int main(int argc, const char * argv[]) {
int a[] = {1,2,3,4,5,6,7};
int min, max;
minmax(a, sizeof(a) / sizeof(a[0]), &min, &max);
return 0;
}
传入函数中的数组是传入了什么,其实就是传入了指针,仅仅是样子像数组。
但是可以用数组的[]运算,数组变量是特殊的指针。
int a[] --> int * const a;
const int a[] = {1,2,3,4,5};
数组变量已经是const 又被const修饰表示
数组的每个单元都是 const int
可以保护数组不被修改
*p++
*的优先级没有++高
指针
用来带出来值
修改值
用来动态分配内存
指针到底怎么指
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...