作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是一个用 C 语言编写的读取数组并使用函数打印它的程序:
#include<stdio.h>
void read_arr(int a[10][10],int row,int col)
{
int i,j;
for(i=1;i<=row;i++)
{
for(j=1;j<=col;j++)
{
printf("\nEnter Element %d %d : ",i,j);
scanf("%d",&a[i][j]);
}
}
}
void print_arr(int m[10][10],int row,int col)
{
int i,j;
for(i=1;i<=row;i++)
{
for(j=1;j<=col;j++)
{
printf("%d ",m[i][j]);
}
printf("\n");
}
}
void main()
{
int m1[10][10],row,col;
printf("Enter number of rows :\n");
scanf("%d",&row);
printf("Enter number of colomns :\n");
scanf("%d",&col);
read_arr(m1,row,col);
printf("\n");
print_arr(m1,row,col);
}
由于我们将值输入到函数“read_arr”中的数组“a”中,这些值是如何传递到“main”函数中的局部变量“m1”中的(我们知道这一点,因为当我们传递“m1' 到函数'print_arr',输出正确显示输入的数组),因为我们没有从'read_arr'返回'a'。
(如果您可以通过解释控件在程序中的运行方式来解释“m1”如何获取值)
最佳答案
在 C 中,参数按值传递,但数组会衰减为指向第一个元素的指针。所以被访问的内存是相同的,这就是元素发生变化的原因。
您可以通过添加代码来打印每个函数内的数组值(作为指针)来验证这一点,如 main()
中所示:
printf("the array is at %p\n", (void *) m1);
关于c - void类型函数如何在没有指针的情况下将值返回到C中的局部变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51964296/
到目前为止,我已经生成了以下代码来尝试将相关数据整合在一起。 但是,使用“+ 7”函数会产生以下问题。 Registration date = '2018-01-01' 它正在推迟 2018-04-0
我已经成功地将我的自定义购物车发布到 PayPal——它处理订单非常漂亮,当收到付款时,它会将数据发回我在配置中指定的 URL。代码基于此处找到的库:http://www.phpfour.com/bl
我是一名优秀的程序员,十分优秀!