C ++:使用指针与cin.getline()

时间:2012-08-11 19:39:25

标签: c++ arrays string pointers cin

我有这个程序无法正常工作。

char arr[200] ;
char *p = arr;
cout << "Enter the string and press ENTER: ";
cin.getline(*p,200);

问题可能是因为我使用指针与cin.getline()。

我的问题是

是否可以在cin.getline中使用指针?

如果是的话。怎么样?

如果没有。那么为什么不,以及如何解决这个问题(特别是将字符串传递给函数)?

2 个答案:

答案 0 :(得分:7)

是的,有可能,你的语法错误。

cin.getline(p,200);

istream :: getline需要一个指针,所以不需要像你那样取消引用它。

答案 1 :(得分:1)

cin.getline(*p,200);

*p属于char类型。您正在取消引用指向char的指针,因此您将依次获得char。你没有传递指针。只需传入p

cin.getline(p, 200);