pragma mark 二维数组和函数
pragma mark 概念
pragma mark 代码
#include <stdio.h>
void change(int nums[]);
void change2(int values[2][3]);
void change3(char vlaues[]);
void change4(char value);
int main()
{
#warning 一维数组和函数
/*
// 一维数组和函数
int nums[2] = {1,2};
// 数组的名称就是数组的地址
// & nums == nums == &nums[0]
change(nums);
printf("nums[0] = %i\n",nums[0]);
*/
#warning 二维数组和函数
char names[2][3] =
{
{'l','y','h'},
{'h','t','h'},
};
printf("&names = %p\n",&names);
printf("names = %p\n",names);
printf("names[0] = %p\n",names[0]);
// 二维数组名称作为函数参数传递, 是传递的地址
// change2(names);
// names[0] == 一维数字
// change3(names[0]);
// names[0][0] == 一维数组的一个元素 == 值
change4(names[0][0]);
printf("names[0][0] = %c\n",names[0][0]);
return 0;
}
// 基本数据类型
void change4(char value)
{
value = 'E';
printf("我执行了");
}
// 以后只要看到函数的参数是一个数组,那么就是地址传递
// 在函数中修改形参的值会影响参数
void change3(char vlaues[])
{
vlaues[0] = 'Q';
printf("我执行了");
}
void change2(int values[2][3])
{
values[0][1] = 'g';
printf("我执行了\n");
}
// 数组作为函数的参数传递,修改形参的值会影响实参
void change(int nums[])
{
nums[0] = 998;
printf("我执行了\n");
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。