指针变量声明的解释
Interpretation of a pointer variable declaration
int *(cmp)(char*, char*);
是什么意思?
char* ptr1;
和char *ptr2;
有什么区别
这个
int *(cmp)(char*, char*);
是 return 类型 int *
和两个 char *
.
类型参数的函数声明
您可以将声明符括在括号中。所以上面的函数声明也可以改写成
int * ( (cmp)(char*, char*) );
这两个声明等同于
int * cmp(char*, char*);
指向此类函数的指针声明如下所示
int * ( *p_cmp )(char*, char*) = cmp;
这些声明之间没有区别
char* ptr1;
char *ptr1;
char * ptr1;
int *(cmp)(char*, char*);
是什么意思?char* ptr1;
和char *ptr2;
有什么区别
这个
int *(cmp)(char*, char*);
是 return 类型 int *
和两个 char *
.
您可以将声明符括在括号中。所以上面的函数声明也可以改写成
int * ( (cmp)(char*, char*) );
这两个声明等同于
int * cmp(char*, char*);
指向此类函数的指针声明如下所示
int * ( *p_cmp )(char*, char*) = cmp;
这些声明之间没有区别
char* ptr1;
char *ptr1;
char * ptr1;