我学习C语言,我有一些困难,以理解指针和数组。
在我读过的教程中,我有这一行:
char* arrP1[] = { "father","mother",NULL };
我的问题是什么是arrp1?
是指向静态字符串的指针数组吗:
或者它是指向字符串数组的指针:
我很困惑…什么是arrp1?
最佳答案
要找到这种偏差的答案,可以使用cdecl。它很可能会回答你。
declare arrP1 as array of pointer to char
然而,有一种东西叫做spiral rule。它也可以帮助你阅读戒毒。例如,
char *str[10]
+-------+
| +-+ |
| ^ | |
char *str[10];
^ ^ | |
| +---+ |
+-----------+
- str is an array of 10 elements
- str is an array of 10, of pointers
- str is an array of 10, of pointers, of type char