C++ 中的字符串数组

String Array in c++

本文关键字:数组 字符串 C++      更新时间:2023-10-16
Output is not correct.Every line miss its first character

现在,当我输入数组的大小,然后输入每个索引的值时。输出无法正确显示,在输出的第 2、3 和 4 行缺少输入的第一个字符

#include <iostream>
#include <iomanip>
#include<string>
using namespace std;
int main ()
{
    int size;
    cout<<"Enter the size of array :";
    cin>>size;
     string name[size];
    for(int i=0;i<size;i++)
    {
        cout<<endl<<"Enter string at "<<i<<" index of array :";
        cin.ignore();
        getline(cin,name[i]);
    }
    //out put of array
    cout<<"OutPut of array "<<endl;
    for(int i=0 ; i<size ;i++)
    {
        cout<<name[i]<<endl;
    }
}

将 cin.ignore() 从循环中取出。这边:

cin.ignore();
for(int i=0;i<size;i++)
{
    cout<<endl<<"Enter string at "<<i<<" index of array :";
    getline(cin,name[i]);
}

早些时候,cin.ignore() 每次在循环中都被执行,并强制忽略字符串的每个第一个字符。修改后的代码:http://ideone.com/5S1yVv