函数形参改变实参的值
值传递,形参不影响实参的值
地址传递,形参可以改变实参的值
数组名做函数参数
数组名做函数参数,函数的形参会退化为指针。这里的数组名不仅仅指一维数组的数组名,也包括多维数组的数组名,它们作为函数参数时就退化为指针,丢失了数组的维度。
指针作为函数的返回值
指针作为函数的返回值时本质是返回函数外部的一段内存空间中的某个地址。
char* nextChar(char* str) {
return str + 1;
}
int main() {
char str[] = "123456";
char* p = nextChar(str);
printf("next char: %c", *p);
}
执行上面代码,输出结果如下: