运行结果:No Name Sex Score101 Zhou ping M 45.000000102 Zhang ping M 62.500000103 Liou fang F 92.500000104 Cheng ling F 87.000000105 Wang ming M 58.000000
应该注意的是,一个结构体指针变量虽然可以用来访问结构体变量或结构体数组元素的成员,但是,不能使它指向一个成员。也就是说不允许取一个成员的地址来赋予它。所以,下面的赋值是错误的:ps=&boy[1].sex;而只能是:ps=boy; // 赋予数组首地址或者是:ps=&boy[0]; //赋予0号元素首地址结构体指针变量作函数参数结构体变量代表的是结构体本身这个整体,而不是首地址,作为函数参数时传递的整个结构体,也就是所有成员。如果结构体成员较多,尤其是成员为数组时,传送的时间和空间开销会很大,严重降低程序的效率。所以最好的办法就是使用指针,也就是用指针变量作为函数参数。这时由实参传向形参的只是地址,非常快速。