C语言day08-03二维数组和函数

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辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似...
    liudhkk阅读 12,976评论 3 38
  • 指针是C语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 8,820评论 3 44
  • 1.0-基础部分 pragma mark:输出常量和变量 你可以用print(_:separator:termin...
    037e3257fa3b阅读 4,419评论 2 7
  • 数组在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称...
    朱森阅读 9,569评论 2 13
  • 走在海边听大海的声音, 沙滩上躺着一个贝壳, 一张一合还活着, 一个拾贝人将它带回。 打开贝壳里面有几颗珠, 每颗...
    lemei阅读 2,790评论 0 2

友情链接更多精彩内容