要写个函数void Init() //它的功能是初始化 handlertus.
struct stu_handlertus
{
int count;
struct stu_handlertus rtus[50];
}handlertus;
struct stu_handlertu
{
unsigned short int rtuindex;
int a;
int b;
int c;
}
如果在函数内部初始化了,那值会传出去吗?
那这个函数应该怎么写呢?
參考答案:或者通过参数传进去,如
void Init(stu_handlertus *hdl)
{
hdl->count = 1;
for(i = 0; i < 50; ++i)
{
hdl->rtus[i].rtuindex = 0
hdl->rtus[i].a = 0;
hdl->rtus[i].b = 0;
hdl->rtus[i].c = 0;
}
}
调用
Init(& handlertus);
即可。
不过结构:
struct stu_handlertus
{
int count;
struct stu_handlertus rtus[50];
}handlertus;
是错误的,原因是这一句
struct stu_handlertus rtus[50];
这样就不知道结构stu_handlertus的大小了。所以上面改为
struct stu_handlertu rtus[50];
两个结构名字这么接近,是一个不好的风格。