C语言,char s[][10]={…省略…},那(*p)[10]=s怎么理解
展开全部
你可以把char [10]看成一个类型。
char
char *
cahr [10] 分别是3个类型
所以,例如:
char s[3][10] //看成一个数组,有3个元素的数组,
//每个元素的类型为数组,即char [10]
//看成一个类型后,和char s[3]一个意思
同理
char (*p)[10]=s 看成 char (*p)=s.
//同类型的指针才能指向同类型的变量,他们都是char [10]类型的,所以可以赋值
就像char x[3]; char *p=x;
char
char *
cahr [10] 分别是3个类型
所以,例如:
char s[3][10] //看成一个数组,有3个元素的数组,
//每个元素的类型为数组,即char [10]
//看成一个类型后,和char s[3]一个意思
同理
char (*p)[10]=s 看成 char (*p)=s.
//同类型的指针才能指向同类型的变量,他们都是char [10]类型的,所以可以赋值
就像char x[3]; char *p=x;
更多追问追答
追问
是不是把数组的首地址给了指针变量p
追答
是的·~
char s[3][10];
char (*p)[10]=s; // p是一个指针,指向一维数组,数组有3个元素。
char *p=s; //p是一个指针,指向二维数组
展开全部
char s[][10]是一个二维数组,其中的元素是有10个元素一维数组。
(*p)[10]是一个指向一维数组的指针。
(*p)[10]=s,就是p指向s[0]这个一维数组。
(*p)[10]是一个指向一维数组的指针。
(*p)[10]=s,就是p指向s[0]这个一维数组。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以把(*P)[10]看成P[0][10],其实就是一个二维数值指针指向一个二维数组的意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char *p[10] = {"abc"};//字符串
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询