|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- #include <string.h>
- int main()
- {
-
- char temp[5] = {"fishc","five","star","good","wow"};
- char (*p)[5] = &temp; //取数组的地址给数组指针
- int i;
- for (i = 0;i<5;i++)
- {
- printf("%s\n",*(*p + i));
- }
- return 0;
- }
复制代码
本帖最后由 风过无痕1989 于 2020-9-29 22:06 编辑
char *temp[5] = {"fishc","five","star","good","wow"};
char p = &temp; //取数组的地址给数组指针
按你第一句的定义,那么赋值号的右边就是 *(*)[5] 型,而左边是 char 型,差了两个级别呢,改成下面这样,级别就对等了:
- #include <stdio.h>
- int main()
- {
-
- char *temp[5] = {"fishc","five","star","good","wow"};
- char *(*p)[5] = &temp; //取数组的地址给数组指针
- int i;
- for (i = 0;i<5;i++)
- {
- printf("%s\n",*(temp + i));
- }
- return 0;
- }
复制代码
|
|