| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1068 人关注过本帖
标题:关于指针数组作为参数的问题...
只看楼主 加入收藏
无名可用
Rank: 4
等 级:业余侠客
帖 子:79
专家分:259
注 册:2010-7-27
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
关于指针数组作为参数的问题...
我刚接触c++,知道结构体属于值类型,所以一个结构体类型变量作为参数是值传递;而数组作为参数是地址传递,因此当一个结构体数组作为参数时传递的是该数组的首地址。。
但我对指针数组作为参数传递还是不太清楚。.
为了简化问题,代码有不周全之处,请大家谅解。
例如:
class Student
{
    public:
            Show();
            ...
};
int main()
{
    Student *stu[100];//定义一个指针数组
    for(int i=0;i<100;i++)
    {
         stu[i]=new Student(...);
    }
    ShowAllStu(stu,100);//将stu作为参数传递
}
int ShowAllStu(Student * stu[],int size)//不知道形参形式是否正确,不过编译没问题
{
    for(int i=0;i<size;i++)
    {
         (*(stu[i])).Show();//不知这样调用对不对,当程序运行到这时会引起内存错误
    }   
}

搜索更多相关主题的帖子: 指针 参数 
2010-08-20 23:35
makebest
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:658
专家分:962
注 册:2005-3-17
收藏
得分:6 
没有经过验证, 但感觉应该这样:
stu[i]->show();
2010-08-20 23:41
xishui777
Rank: 2
等 级:论坛游民
帖 子:53
专家分:94
注 册:2010-8-17
收藏
得分:6 
#include<iostream>
using namespace std;
class Student
{
    public:
           void Show(){};
};
int ShowAllStu(Student * stu[],int size)//不知道形参形式是否正确,不过编译没问题
{
    for(int i=0;i<size;i++)
    {
         (*(stu[i])).Show();//不知这样调用对不对,当程序运行到这时会引起内存错误
    }   
}
int main()
{
    Student *stu[100];//定义一个指针数组
    for(int i=0;i<100;i++)
    {
         stu[i]=new Student;
    }
    ShowAllStu(stu,100);//将stu作为参数传递
    system("pause");
    return 0;
}
是了得,可以过
2010-08-21 01:15
快速回复:关于指针数组作为参数的问题...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021267 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved