一些c++的问题,求大神指教

不好意思,有点多,我是真的不知道,老师指针的一笔带过的,我实践抽到的题目要用指针做,书里的例题我看不懂,所以请求大神指点一二,谢谢啦,批注就是不知道的... 不好意思,有点多,我是真的不知道,老师指针的一笔带过的,我实践抽到的题目要用指针做,书里的例题我

看不懂,所以请求大神指点一二,谢谢啦,批注就是不知道的
展开
 我来答
微俊king
2015-07-07 · TA获得超过576个赞
知道小有建树答主
回答量:626
采纳率:50%
帮助的人:568万
展开全部
三个知识点
动态二维数组的申请
值传递和指针传递
二维数组的加长
看懂了 自然就懂了
哥们儿会_臭臭
2015-07-07 · TA获得超过876个赞
知道小有建树答主
回答量:421
采纳率:50%
帮助的人:189万
展开全部

1、为什么这里n,m要用*的形式

    这是地址,如果不用*,函数结束的时候m、n的生命也就结束了,输入的m、n不会保留。例题中可能要求m、n保留下来,所以直接传的地址,对主函数中的m、n的地址直接修改,只要程序没有结束,m、n还在。

2、分配动态存储空间的时候........

   *[*n+1]前面的*其实是float*,因为前面用的是float ** ,即这个指针的地址,所以申请空间的时候因该是申请指针的空间,也就是float*

   *n是上面输入的学生数,*n+1就是学生数+1,只是多申请一个空间,可能是为了防止一些意外的错误。

3、str_p[i]是什么。。。。。。

   str_p[i]是刚才申请的第i个空间,是一个float指针,应该表示的i个同学

   *m是上面输入的学生成绩门数,*m+2就是学生成绩门数,+2的原因应该和上面那个问题差不多

4、为什么去等号。。

    个人认为他写错了,感觉是for(int j=1;j<=m;j++) 或者 for(int j=0;j<m;j++)

5、再写一遍?

    i原因来是0~n-1的循环,现在是n,和刚才的不一样

    至于为什么还要申请。。估计是为了返回sr_p,为了让这个东西更好看吧。。

6、指向指针的指针?

    srecord_p因该是二维的,第i行表示第i个同学,第i行j列表示第i个同学的第j门成绩。一个指针也就能表示一维,指针的指针就可以表示两维了。

也就是 srecord_p[i]表示第i个同学 srecord_p[i][j] 表示第i个同学的第j门成绩

7、调用函数。。

    就是调用函数啊。。

&n,&m是传地址,第一问回答了。。

函数返回值是float**的,srecord_p会获得函数的返回值。。

更多追问追答
追问
谢谢啦
我想问你一个问题,就是那一张照片里,我想把姓名用字符,成绩用单精度,要怎么弄啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式