首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

菜鸟求教

2012-04-02 
初学者求教#include iostreamusing namespace std#define Maxlen 50typedef int eletypetypedef elety

初学者求教
#include< iostream>
using namespace std;
#define Maxlen 50
typedef int eletype;
typedef eletype sqlist[Maxlen];
int n;

int creat(sqlist A)
{

cout<<"创建一个顺序表"<<endl;
cout<<"请输入元素的个数";
cin>>n;
for(int i=0; i<n;i++)
{
cout<<"第"<<i+1<<"个元素的值为:";
cin>>A[i];

}
return n;


}
问题:刚开始定义了typedef eletype sqlist[Maxlen];
下面为什么能用int creat(sqlist A)?sqlist A ??
下面的程序为什么又能直接用A[i]? 而没有报错!!


[解决办法]
sqlist是类型eletype [maxLen](这是数组)的别名,所以可以自己用[]访问数组元素的。
[解决办法]
sqlist是数组,数组名是该数组的的首元素的地址,所以按数组名传递其实是传递的数组的地址,这样在子函数中九可以按照下标的形式访问该数组的元素了!

热点排行