2011
03-17

首先来看程序

#include <stdio.h>

int*f (int*p,int*q);

main()
{
int m=1,n=2,*r=&m;
r=f(r,&n);printf(“%d\n”,*r);return 0;
}
int*f (int *p,int*q)
{return (*p>*q)?p:q;}

很简单 但是我有一个始终想不通的地方 为什么&M能够赋给*R 它就等同于把M的地址给R吗 在我的理解中他应该代表R=&(&M)那么下面函数中的R应该就是”R的地址的地址“ 显然他不能跟&N等同 可是他们却同样代入到函数中赋给*P *Q值了 虽然运行的结果也正确但是我就是不明白为什么 可能我概念还没弄清楚 望高手指导!

 

另外求VC6++常用功能的快捷键 今天一个朋友告诉我F4可以直接找到错误帮了我很大的忙 。。


新手求解》有 3 条评论

  1. whos 说:

    int *r = &m;

    等同于
    int *r;
    r = &m;
  2. lijiaoyan 说:

    原来是这样啊,值得学习啊。顶。

     
     
     
     
     
     
     
     
     
     
     
    SIGNATURE:————————————————–
    A man of words and not of deeds is like a garden full of weeds.
    nike free run 2,nike free 3.0,nike free 7.0

留下一个回复