char *s[10] 与char (*s)[10]有区别吗?

2025-04-10 19:18:17
推荐回答(3个)
回答1:

char* s[10]等价于char *s[10] //(这是由于*的优先级和结合方向决定的)
所以char* s[10]是一个元素是指向char类型指针的数组,该数组有十个元素
char (*s)[10]是一个有十个元素的char数组,但是s是指向这类数组的指针//s是指向指针的指针!~

回答2:

char *s[10]表示一个有10个元素的数组,数组的元素类型是char * ;
char (*s)[10]表示一个指针,指针指向的是有10个元素的字符数组

回答3:

前者是定义一个指向数组的指针,后者是定义一个数组,里面有十个指针