C语言指向 字符串数组 的指针 的声明方式

这个程序可以正常运行,只是编译时会产生一句警告。想问一下怎样申明可以避免出现这句警告... 这个程序可以正常运行,只是编译时会产生一句警告。想问一下怎样申明可以避免出现这句警告 展开
 我来答
lijiachengasd
2015-02-23 · TA获得超过628个赞
知道小有建树答主
回答量:509
采纳率:100%
帮助的人:140万
展开全部
#include <stdio.h>
int main(void)
{
char * test[] = {"1111", "2222", "3333"};
char * p[][3] = {{"1111", "2222", "3333"}};
puts(p[0][0]);
return 0;
}
//注意char * (*p)[] = 。。。 并不是声明数组,声明数组的方式是char * p[][3] = {{},{},{}...};
//char * (*p)[]只是声明变量,常用作函数的声明中作为形参来使用。
追问
我是想把test的地址赋给p啊、、、p应该是一个指向(char * test[])的指针、、
追答
#include <stdio.h>
int main(void)
{
char * test[] = {"1111", "2222", "3333"};
char * (*p)[3] = &test;
puts(p[0][0]);
return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式