指针声明

时间:2015-06-19 00:34:18

标签: c pointers

char *(*a)[20];这样的指针声明是什么意思?与char **a[20];有什么区别?

这两个声明是否相同?如果没有,区别是什么?

1 个答案:

答案 0 :(得分:9)

这是一个指针数组的指针。

ERROR : com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''keys'(requiredKeyword,noOfPages,textBookCode,pageNumbers,definition) values('da' at line 1 是一个字符数组。

char a[20];是一个指向字符的指针数组

char* a[20];是指向字符数组的指针

char (*a)[20];是指向字符指针数组的指针。

请注意,char* (*a)[20];是指向字符指针的指针数组。括号的优先级高于星号,因此您需要括号来声明指向数组的指针。