中易网

C++中指针指向string 类的错误

答案:4  悬赏:40  
解决时间 2021-02-21 02:20
#include
#include
#include
using namespace std;
typedef struct
{
string name;
}str;
typedef struct
{
str * top;
}top;
void main()
{
top *car=(top *) malloc (sizeof(top));
cout<<"input "< cin>>car->top->name;
cout<top->name<}
为什么出错,原理上有什么问题?car->top->name难道不对吗?我把string改成int就可以,目前有个模块就是这个问题,怎么解决。
最佳答案
top *car=(top *) malloc (sizeof(top));
car->top = (str*)malloc(sizeof(str)); //car的top初始情况下是个野指针,加上这一句就行了。
cout<<"input "< cin>>car->top->name;
cout<top->name< 不过既然你都用string了,为什么不用new,而要用malloc?
top *car= new top;
car->top = new str;
全部回答
是不是因为cin是只能一次读一个字符呢。。。
顶楼上。
top *car= new top; car->top = new str; 正解
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
电脑开不了机怎么办
英语四级备战新闻稿该怎么写
比喻准备不足的成语
如何对企业进行资信评估
长期忘不了前男友。怎么办
南通机场(海安)候机厅这个地址在什么地方,我
请问煤矿建材现在利润有多大?
佳乐超市(银山路)在哪里啊,我有事要去这个地
把5个苹果平均分给6个同学,每人分得1/6,对吗
急!请问浙江高考9W名(一共30W)能报什么好
自贡兴隆镇`2009年8月 打出石油了`
别克新君威前防撞钢梁原厂的多少钱
中国信合(勐简乡信用社)地址有知道的么?有点
华为Mate8指示灯怎么开启
苹果5s被偷了我设置屏幕密码请问可以刷机破密
推荐资讯
java web开发 java.lang.ClassNotFoundExcept
奥迪V6发动机烧机油怎么处理
卡特330c什么时候生产
精英酒业地址在哪,我要去那里办事
通过波斯湾要换小船 是什么教材上说的
格拉照明有限公司地址在哪,我要去那里办事
宇博便民商店我想知道这个在什么地方
信益陶瓷(中国)有限公司在中国市场排名怎样
家教,心理咨询需办什么营业执照
大黑箐怎么去啊,有知道地址的么
佛前供灯要24小时常亮吗
怎么安装diag驱动
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?