| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1242 人关注过本帖
标题:C++ cin.getline()参数的问题
只看楼主 加入收藏
yangjack001
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-7-17
收藏
 问题点数:0 回复次数:2 
C++ cin.getline()参数的问题
#include<iostream.h>
#include <fstream.h>
struct aaaa{
char as[40];
};

void main()
{aaaa *p;
cout<<"输入:"<<endl;
cin.getline(p->as,40);
cout<<p->as<<endl;
}

这个小程序在执行的过程中老是出错,是什么地址不能为"read"之类的,如果把cin.getline(p->as,40)中的p->as换为p.as,*p换为p,既p是对象不是指针就对。
这是为什么,有什么可以改的吗,我要输入一段字符串,但是我的函数的传值参数只能是结构的指针,也就是后面访问结构的成员时,只能用p->as这种方式,而as是字符数组,用cin.getline()这个函数比较方便,但会出错。
我该怎么修改。
搜索更多相关主题的帖子: cin getline 
2008-07-17 20:54
hitxinyu
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2008-4-11
收藏
得分:0 
void main()
{aaaa *p = new aaaa();
cout<<"输入:"<<endl;
cin.getline(p->as,40);
cout<<p->as<<endl;
delete p;
}
传指针可以这样
aaaa p;
传 &p 就可以了。
2008-07-17 21:05
yangjack001
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-7-17
收藏
得分:0 
谢谢。
原来我没有初始化,没有给p分配空间,所以p-as老是出错。谢了啊!
2008-07-17 21:37
快速回复:C++ cin.getline()参数的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026951 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved