用getchar 给一个数组赋值

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int a[10] = { 0 };
    int i = 0;
    for (; (getchar()) != '\n'; i++)
    {
        a[i] = getchar();
    }
    int j;
    for (j = 0; j <= i; j++)
    {
        cout << a[j]<<' ';
    }
    return 0;
}

请不要混用cin和getchar(), 他们共享一个buffer, cin之后立即调用getchar,只能得到‘\n', 正好是你的循环结束条件。

是哪里出错了呢

你这相当于一次循环执行两次getchar,而且getchar输入的是字符,你的接收变量是int型的