title: template id does not match any template declaration
body: <p>I am trying to write a function template that returns the maximum value out of an array of values. It is supposed to also have a specialized template that accepts an array of pointers to chars and returns the address of the largest string pointed to by an element of the array. I get the error "[Error] template-id 'max' for 'char max(char**, int)' does not match any template declaration". I'm really uncertain as to what is wrong in my template specialization, also I do not want to overload the function, I want to know why this code isn't working.</p>
  
  <p>my code:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;cstring&gt;
  #include &lt;cctype&gt;
  using namespace std;
  //returns the maximum value out of an array
  template `&lt;typename T&gt;`
  T max(T array[], int items);
  //returns returns address of largest string pointed to by an element in the array
  template &lt;&gt; 
  char * max &lt;char&gt;(char * array[], int items);
  int elemcout();
  int main(){
      double list [] = {2.4, 5.7, 3.6, 8.1, 10.6, 15.7, 3.1415};
      int items []= {20,50,10,30,40};
      cout &lt;&lt; max(list, 7) &lt;&lt;endl &lt;&lt;max(items, 5);
  }
  
  template &lt;typename T&gt;
  T max (T array[] ,int items){
      T cmax = 0;
      for (int i = 0; i &lt; items; i++){
          if (array[i] &gt; cmax)
              cmax = array[i];
      }
      return cmax;
  }
  template &lt;&gt; 
  char * max &lt;char&gt;(char array[], int items){
      //was working on this but got template missmatch error
  }
  </code></pre>