A-A+
设有如下定义 struct ss { char name[10]; int age; cha
问题详情
设有如下定义 struct ss { char name[10]; int age; char sex; }std[3], * p=std; 下面各输入语句中错误的是
A.cin>>(* p).age);
B.cin>>std.name);
C.cin>>std[0].sex);
D.cin>>(p->.sex));请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
解析:std是一个数组,其内可以存放三个结构体类型的数据。当std单独使用的时候表示一个指针,指向该数组首地址。因此不能直接用std和点操作符进行配对使用。指针操作符->只能和指针配对使用,点操作符只能和有名对象或变量配对使用。