getline() returns an error
<p>I'm attempting to read from a file and use <code>strtok()</code> to break up the strings I get in from the file. The problem is, I keep getting this error whenever I compile the program.</p>

<pre><code>source.cpp: In function ‘int main(int, char**)’:
source.cpp:39:32: error: no matching function for call to ‘getline(char [1000], int,     char)’
source.cpp:39:32: note: candidates are:
/usr/include/stdio.h:675:20: note: __ssize_t getline(char**, size_t*, FILE*)
/usr/include/stdio.h:675:20: note:   no known conversion for argument 1 from ‘char   [1000]’ to ‘char**’
/usr/include/c++/4.6/bits/basic_string.h:2734:5: note: template&lt;class _CharT, class    _Traits, class _Alloc&gt; std::basic_istream&lt;_CharT, _Traits&gt;&amp;    std::getline(std::basic_istream&lt;_CharT, _Traits&gt;&amp;, std::basic_string&lt;_CharT, _Traits,   _Alloc&gt;&amp;)
/usr/include/c++/4.6/bits/basic_string.tcc:1070:5: note: template&lt;class _CharT, class _Traits, class _Alloc&gt; std::basic_istream&lt;_CharT, _Traits&gt;&amp;   std::getline(std::basic_istream&lt;_CharT, _Traits&gt;&amp;, std::basic_string&lt;_CharT, _Traits,   _Alloc&gt;&amp;, _CharT)
</code></pre>

<p>Here is the portion of my code that is causing the problem.</p>

<pre><code>char *p, line[1000], opcode[9], arg1[256], arg2[256];

int i = 0;

while(getline(line, 1000, '\n') != NULL)
{
    line[strlen(line)-1] = '\0';
    cout &lt;&lt; "Line = " &lt;&lt; line &lt;&lt; endl;

    if (strchr(line, '#'))
    {
        *p = '\0';
    }
    if (p = strtok(line, "\t"))
        strcpy(opcode,p);
    if (p = strtok(NULL, "\t"))
        strcpy(arg1,p);
    if (p = strtok(NULL, "\t"))
        strcpy(arg2,p);

    printf("opcode=:%s: arg1=:%s: arg2=:%s:\n",opcode,arg1,arg2);

}
</code></pre>

<p>I'd appreciate any help I can get. Thank you.</p>
