28:单词倒排运行错误

问题遇到的现象和发生背景

28:单词倒排
查看提交统计提问
总时间限制: 1000ms 内存限制: 65536kB
描述
编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。

输入
输入为一个字符串(字符串长度至多为100)。
输出
输出为按要求排序后的字符串。
样例输入
I am a student
样例输出
student a am I

问题相关代码,请勿粘贴截图
#include

using namespace std;


int main()
{
    string a[501];
    memset(a,'\0',sizeof(a));
 int g;
    for(g=1;;g++)
    {
        cin>>a[g];
        if(getchar()=='\n')
            break;
    }
    for(int i=g;i>=1;i--)
    {
        cout<' ';
    }
    return 0;
}

运行结果及报错内容

一直runtime error

在VS上运行了一下,没报错啊
memset(a,'\0',sizeof(a));删掉吧