C++ c现亲小格季胜问失宜帝in.getline用法问题
的有关信息介绍如下:问题补充说明:看的是C++ Primer plus 第六版贴下代码#include "iostream"#include "cmath"#include "cstring"using namespace std;int main(void) { char name{20}; cout << "Please enter your name" << endl; cin.getline(name, 20); cout << "oh,your name is " << name << endl; return 0;}其中cin.getline()报错报错内容如下:严重性 代码 说明 项目 文件 行错误 C2664 “std::basic_istream> &std::basic_istream>::getline(_Elem *,std::streamsize,_Elem)”: 无法将参数 1 从“char”转换为“char *” ConsoleApplication2 c:\users\administrator.vvtpiks31vuky8u\documents\visual studio 2015\projects\consoleapplication2\consoleapplication2\firsttest.cpp 8严重性 代码 说明 项目 文件 行错误(活动) 没有与参数列表匹配的 重载函数 "std::basic_istream<_elem, _traits="">::getline [其中 _Elem=char, _Traits=std::char_traits]" 实例 ConsoleApplication2 c:\Users\Administrator.VVTPIKS31VUKY8U\Documents\Visual Studio 2015\Projects\ConsoleApplication2\ConsoleApplication2\firsttest.cpp 8请问怎么解决 用的是VS2015
char数组声明有问题,将大括号改成中括号侍蠢,将
1char name{20};改老陆陪为悉启
1char name[20];整个程序为:
1234567891011#include "iostream"#include "cmath"#include "cstring"using namespace std;int main(void){ char name[20]; cout << "Please enter your name" << endl; cin.getline(name, 20); cout << "oh,your name is " << name << endl;}结果为: