代码如下:
void func(int *a, int b[])
{
b[0] =*a+6;
}
void main()
{
int a, b[5];
a=0; b[0]=0;
func(&a,b);
printf("%d\n",b[0]);
}
为什么打出来的结果不是0,是6呢,b作为数组来说不是没有传引用过去吗?为什么调了个函数里面的值就会变了呢?
void func(int *a, int b[])
{
b[0] =*a+6;
}
void main()
{
int a, b[5];
a=0; b[0]=0;
func(&a,b);
printf("%d\n",b[0]);
}
为什么打出来的结果不是0,是6呢,b作为数组来说不是没有传引用过去吗?为什么调了个函数里面的值就会变了呢?
解决方案 »
- 子窗口与父窗口同时接收WM_MOUSEMOVE消息的问题!
- 关于Photosho中若干技术实现方法之提问一:鼠标指针的秘密。
- 线程改变对话框控件问题,请教高人
- 一小段获得颜色的代码,看得莫名奇妙,大家帮帮忙看看啊!
- 程序运行到MyDlg.DoModal()显示一个对话框,只有当MyDlg关闭后才能执行MyDlg.DoModal()后面的程序,我想显示对话框的同时执行MyDlg.DoMod
- 诚征爱好网络的网友,我正在研究一个远程控制的源代码,写了很多注释,可是有些代码还是不懂。
- <<程序员>>看了吗?何谓CMM 啊?
- 现在学MFC还有没有优势
- 如何把这图标放到ListView中去??
- 链接错误如何解决?大虾们,帮一把吧。
- 高分请教,关于如何实现透明FALSH的问题
- 在Windows系统服务(Windows NT Service)中使用CAsyncSocket的问题
func(&a,b[0]);
则输出结果就是0了吧?
讲解一下,谢谢啦