为什么这样会报错?

ShiChao 2003-08-16 05:27:20
void fn(char **);
int main()
{
char s[10][10];
fn(s); // 编译器说无法从char[][]转换为char**
}

为什么?
...全文
75 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ShiChao 2003-08-16
  • 打赏
  • 举报
回复
奥,谢谢二位,给分
World7th 2003-08-16
  • 打赏
  • 举报
回复
改为:
char *s[10];即可编译通过,因为char**为指针的指针,char[][]为一个字符二维数组类型,s是一个指向首地址的指针.
aflyinghorse 2003-08-16
  • 打赏
  • 举报
回复
这样声明:
void fn(char (*)[10]){};
int main()
{
char s[10][10];
fn(s);
}

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧