二级C语言。。。关于指针与二维数组。。。谢谢
若有定义语句:chars[3][10],(*k)[3],*p;,则以下赋值语句正确的是______A)p=s;B)p=k;C)p=s[0];D)k=s;答案给的是C,可我...
若有定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是______
A)p=s; B)p=k; C)p=s[0]; D)k=s;
答案给的是C,可我觉得每个选项都对啊。。。求教各位大神,帮我讲解下吧,谢谢 展开
A)p=s; B)p=k; C)p=s[0]; D)k=s;
答案给的是C,可我觉得每个选项都对啊。。。求教各位大神,帮我讲解下吧,谢谢 展开
8个回答
展开全部
选C是正确的。原因就是p与s[0]的类型都是int *,其他不能选的原因是等号两边的类型不一致。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
s 数组 二维和一维没多大区别 K是指针数组 只指向某一段空间 p是指针 但是只只想一个
A中 P不是指针数组 错 B中指针 不能付给指针 没意义 错 C中 指针K的空间不够
A中 P不是指针数组 错 B中指针 不能付给指针 没意义 错 C中 指针K的空间不够
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得把。
A中。P可以用P=S的这样的定义表示P指向一个一维数组。,二维好像不行。。好像是因为那个地址不是那样算的。嗯。。P=S[0][ X],P+1=S[1][ X]。
B中 K应该是个指针数组把。。应该是*P=K,这样的把。。?
D中 K是指针数组的地址。S是二位数组的地址。这样好像毫无意义。。。
额。不好意思。。不对的地方请指教。。
我也在学习的。。。
A中。P可以用P=S的这样的定义表示P指向一个一维数组。,二维好像不行。。好像是因为那个地址不是那样算的。嗯。。P=S[0][ X],P+1=S[1][ X]。
B中 K应该是个指针数组把。。应该是*P=K,这样的把。。?
D中 K是指针数组的地址。S是二位数组的地址。这样好像毫无意义。。。
额。不好意思。。不对的地方请指教。。
我也在学习的。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a,b,c,d都对
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只有s后面有中括号,代表整体数组。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询