旭辉夜夜访 2022-04-27 02:37 采纳率: 100%
浏览 42
已结题

C++模板类输入数据遇到回车停止,最后一位数据丢失

我输入了4个数,但是输出只有3个数,这是什么原因?
输入5个数,输出有4个数。

template <class T>
void SeqList<T>::SeqList_cin(T x)
{
    int i = 0;
    int a[Maxsize]{};
    char c;
    while (x)   //输入回车结束循环
    {
        
        a[i] = x;
        i++;
        cin >> x;
        if (c = getchar() == '\n') break;
        
    }
    length = i;
    for (int j = 0; j < length; j++)
    {
        data[j] = a[j];
    }
}
int main()
{
    int x1;                
    int i = 0;
    cout << "请为无参顺序表输入数据" << endl;
    cin >> x1;
    //为顺序表添加元素,通过键盘输入
    L1.SeqList_cin(x1);
}

img

  • 写回答

3条回答 默认 最新

  • kinghero123456 2022-04-27 09:40
    关注

    把代码粘贴全,之后才能分析问题!!!!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月6日
  • 已采纳回答 4月28日
  • 创建了问题 4月27日