c - 发送一个二维数组来计算总数并在函数中显示结果
问题描述
我想找到数组的大小,由另一个函数分隔
我尝试发送信息。但它没有正确显示结果
int main()
{
int amount[2];
int price[2][4];
int total[4];
getData(amount,price,total);
getSizeOfArray(amount,price,total);
}
void getData(int amount[2],int price[2][4],int total[2])
{
for(int i=0;i<2;i++)
{
printf("+++Department %d+++\n\n",i+1);
for(int j=0;j<4;j++)
{
printf("Costomer %d\n",j+1);
printf("Enter amount : ");
scanf("%d",&amount[i]);
printf("Enter price : ");
scanf("%d",&price[i][j]);
total[j]=amount[i]*price[i][j];
}
printf("\n=================\n");
}
}
void getSizeOfArray(int amount[2],int price[2][4],int total[2])
{
}
解决方案
如果要获取数量数组大小:
int getSizeOfArray(int* amount)
{
return (sizeof(amount) / sizeof(int));
}
它将返回 2
如果您想获取价格数组大小:
int * getSizeOfArray(int** price)
{
int size[2];
size[1] = (sizeof(price[0]) / sizeof(int));
size[0] = (sizeof(price) / sizeof(int)) / size[1];
return size;
}
它将返回一个数组:
尺寸[0]:2
尺寸[1]:4
推荐阅读
- selenium - 具有多个空格的 Selenium 文本检索
- python - 如何使用 VScode 获取特定 Python 模块方法的内部源代码?
- c - 为什么 -1L < 1UL 在 C 中为真?
- javascript - 如何从 Firestore 文档中获取嵌套的参考数据?
- hadoop - 使用 pyspark 3.0.1 和 hadoop 3.2 构建 docker 映像
- flutter - 如何在颤动中做android.intent.action.VIEW?
- linux - 如何将 wget 输出重定向到新创建的目录
- r - 如何在 R 中使用 ggplot2 创建散点图?
- java - 为什么if else语句在这个程序中不起作用。请需要一些解释,虽然我无法继续学习
- r - 如何保存 ShinyFiles 目录输入的基本名称以传递给函数