A value of type "char *" cannot be used to initialize an entity of type "char"
<p>I've seen a couple threads dealing with similar errors, but they were all dealing with different variations of the problem from the one I have encountered (code for: "I'm too green to make sense of them").</p>

<pre><code>    #include &lt;iostream&gt;
    #include &lt;array&gt;
    #include &lt;sstream&gt;
    using namespace std;

    struct StudentRecord
    {
        char name[20];
        int id;
        float gpa;
    };

    int main()
    {
        cout &lt;&lt; "Enter your name:" &lt;&lt; endl;
        char nameInput[20];
        cin &gt;&gt; nameInput;

        cout &lt;&lt; "Enter your student ID:" &lt;&lt; endl;
        int idInput;
        cin &gt;&gt; idInput;

        cout &lt;&lt; "Enter your GPA:" &lt;&lt; endl;
        float gpaInput;
        cin &gt;&gt; gpaInput;

        StudentRecord TESCStudent =
        { { nameInput }, idInput, gpaInput }; // TROUBLE STARTS HERE

    cout &lt;&lt; "Name: " &lt;&lt; TESCStudent.name &lt;&lt; "\nID: " &lt;&lt; TESCStudent.id &lt;&lt; "\nGPA: "
        &lt;&lt; TESCStudent.gpa &lt;&lt; endl;
}
</code></pre>

<p>The StudentRecord TESCStudent = {...} initializer gives the following errors:
error C2440: 'initializing' : cannot convert from 'char [20]' to 'char' 
IntelliSense:  a value of type "char *" cannot be used to initialize an entity of type "char"</p>

<p>I realize that an string would solve a lot of problems, but the project asked that we get the name as a 20 character array.</p>

<p>This is my first time using a struct, so I may be doing something horrendous without meaning to, please go easy on me!</p>