我正在做一个我们不允许使用字符串的赋值,我们必须使用char数组。这是我的代码:
cout << "Enter Album name: ";
cin >> CDdata[count].title;
fout << CDdata[count].title;
问题是,当我输入带有空格的东西时,我的其余代码就搞砸了。
如何获取它以便输入带有空格的东西?
答案 0 :(得分:5)
使用cin.getline(CDdata[count].title, 1000)
。第二个参数是char数组的长度CData[count].title
。
上面的函数要么读取1000个字符,要么找到一个分隔符,默认情况下是一个换行符(\n
),但可以按如下方式更改。
cin.getline(CDdata[count].title, 1000, ',') //delimiter is changed to ','
如果您想要更正式的描述,请阅读here。
P.S:我使用了1000,第二个参数作为占位符。你应该相应地改变它。
答案 1 :(得分:1)
使用cin.getline()
作为终止字符'\n'
,而不是空格。
答案 2 :(得分:0)