如下函数:
void A(int *){...}有下面调用方式:
A(0);
A(NULL);
int b=1; A(b);等
其中#define NULL 0请问这种形参定义方式有什么意义?A中怎么用形参啊?谢谢!

解决方案 »

  1.   

    就是函数有这个参数,但函数中不需要使用这个参数。
    有些时候一些函数需要使用统一的函数类型,例如各种窗口消息的响应函数,函数要定义WPARAM、LPARAM类型的两个参数,但不是每个消息都要用到这两个参数的,例如WM_CLOSE消息,这是就可以把参数只写类型而不写名称。
      

  2.   

    顶楼上。
    另外如果在函数内部不使用这个参数,却在形参中定义了这个形参变量的话,编译的时候会提示变量未使用。所以此时不写形参变量是明智的,虽然可以在函数内部使用UNREFRENCED_PARAMETER宏来避免这个warning。