title: What's the reason of int* conversion not permitted to int error?
body: <pre><code>#include &lt;iostream&gt;
  #include &lt;algorithm&gt;
  #include &lt;string&gt;
  using namespace std;
  int minimu ( int a, int b, int c );
  
  int main (void)
  {
      int t,i,j;
      cin&gt;&gt;t;
      while ( t != 0 )
      {
          string a;
          string b;
          cin&gt;&gt;a&gt;&gt;b;
          int k;
          int len1 = a.length();
          int len2 = b.length();
          int dp[len1][len2];
          dp[0][0] = 0;
          for ( i = 0; i &lt; len1; i++ )
          {
              dp[i][0] = i;
          }
          for ( j = 0; j &lt; len2; j++ )
          {
              dp[0][j] = j;
          }
          for ( i = 1; i &lt; len1; i++ )
              for ( j = 1; j &lt; len2; j++ )
              {
                  if ( a[i] == b[j] )
                      k = 2;
                  else
                      k = 0;  
                  dp[i][j] = minimu(dp[i-1,j]+1,dp[i,j-1]+1,dp[i-1][j-1]+k);
              }
           cout&lt;&lt;dp[len1-1][len2-1]&lt;&lt;"\n";
           t--;
       }
       return 0;
  }
  
  int minimu ( int a, int b, int c )
  {
      int foo = min(a,min(b,c));
      return foo;
  }   
  </code></pre>
  
  <p>This is the program for calculating the minimum number of operations while converting one string to another string. The only allowed operations for converting are:</p>
  
  <pre><code>1. Deleting a character
  2. Inserting a character
  3. Substituting a character   
  </code></pre>
  
  <p>Now, when I compile this program, it shows the error that:</p>
  
  <blockquote>
    <p>invalid conversion from int* to int[-fpermissive]</p>
  </blockquote>
  
  <p>in the line where I update the 2-D array <code>dp[i,j]</code>. Why is that happening?</p>