c - 通过C中的函数将值分配给整数数组
问题描述
我正在制作一个奇怪的不实用的程序,它调用了四个函数。
第一个函数将 30 个整数读入一个数组;
第二个做同样的事情,但对另一个数组;
第三应该创建另一个有 60 个元素的数组,一半是第一个数组的元素,另一半是第二个数组的元素;
第四个将向用户显示整个数组。
我被困在我的第三个功能上。我没有找到任何解释如何通过函数更改整数数组的值。
#include <stdio.h>
void array1(int *a1);
void array2(int *a2);
void mash(int *a1, int *a2, int *a);
void exhibit(int *a);
int main()
{
int a1[30];
array1(a1);
int a2[30];
array2(a2);
int a[60];
mash(a1, a2, a);
exhibit(a);
return 0;
}
void array1(int *a1)
{
int temp[30];
for (int i = 0; i < 30; i++)
{
scanf("%i", a1 + i);
}
}
void array2(int *a2)
{
for (int i = 0; i < 30; i++)
{
scanf("%i", a2 + i);
}
}
void mash(int *a1, int *a2, int *a)
{
for (int i = 0; i < 30; i++)
{
a + i = a1 + i;
}
}
void exhibit(int *a)
{
}
我认为我应该能够通过向指针添加 1 来访问每个元素,就像我在之前的函数中获取输入一样。
解决方案
您想访问这些指针,即像这样取消引用它们:
*(a + i) = *(a1 + i);
为了让它不那么难看,有语法糖:
a[i] = a1[i];
推荐阅读
- javascript - 如何将数组从js传递到控制器
- python - 如何在变量下的 .txt 文件中打印字符串
- javascript - Javascript 新手制作小费计算器无法弄清楚它为什么不加载?
- python - tz_localize: KeyError: ('Asia/Singapore', u'occurrred at index 0')
- java - 方法被调用了 8 次,我不明白为什么?
- bash - 查找具有特定扩展名的文件
- javascript - 在 Next.js 中为 styled-jsx 动态添加样式
- sql-server - 无法使用 django-pyodbc-azure 2.1.0.0 连接到 MSSQL
- excel - 用户表单输入后如何自动向下滚动到新数据
- svg - 内联 svg 未在 xhtml 中显示