• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
gddzkw
博客园    首页    新随笔    联系   管理    订阅  订阅
数组寻址的深度理解

主要是针对于数组访址的方式展开研究:

void fun(int arr[], int n)
{
  int i = 0;
  for (i = 0; i < n; i++)
  {
    printf("%d\t", arr[i]);
  }
}
void fun1(int *arr, int n)\
{
  int i = 0;
  for (i = 0; i < n; i++)
  {
    printf("%d\t", *(arr + i));
  }
}
void fun2()
{
  int arr[3][3] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
  int i = 0;
  int j = 0;
  printf("\n");
  for (i = 0; i < 3; i++)
  {
    for (j = 0; j < 3; j++)
    {
      printf("%d\t", arr[i][j]);
    }
    printf("\n");
  }
}
void fun3()
{
  int arr[3][3] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
  int i = 0;
  int j = 0;
  for (i = 0; i < 3; i++)
  {
    for (j = 0; j < 3; j++)
    {
      printf("%d\t", *(*(arr + i) + j));
    }
    printf("\n");
  }
}
void fun4()
{
  int arr1[] = { 1, 2, 3 };
  int arr2[] = { 4, 5, 6 };
  int arr3[] = { 7, 8, 9 };
  int *arr[] = { arr1, arr2, arr3 };
  int i = 0;
  int j = 0;
  for (i = 0; i < 3; i++)
  {
    for (j = 0; j < 3; j++)\
    {
      printf("%d\t", *(*(arr + i) + j));
    }
    printf("\n");
  }
}
int main()
{
  int arr[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
  int sz = sizeof(arr) / sizeof(arr[0]);
  fun(arr,sz);
  printf("\n");
  fun1(arr, sz);
  printf("\n");
  fun2();
  printf("\n");
  fun3();
  printf("\n");
  fun4();
  printf("\n");
  return 0;
}

结果理想:

 

posted on 2021-10-14 13:52  又菜又爱玩丶  阅读(86)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3