title: IF statement fails to check a correct value
body: <p>I have a function that translates a string coordinate to an int number from 0-9.
  Now the function seems to fail to get the string <code>A10</code>(for example) and translate it to <code>0,9</code>. Maybe someone can tell me why?</p>
  
  <pre><code>Point TranslateCoordinate(char* c){
          Point newpoint;
          newpoint=malloc(sizeof(Point));//this is beacuse its an ADT
          int row=c[0];
          int column;
          newpoint-&gt;x=row-'A';
          if(c[1]== '1' &amp;&amp; c[2]== '0'){
              newpoint-&gt;y=9;
              return newpoint;
          }
          column=c[1];
          newpoint-&gt;y=column-'1';
          return newpoint;
  }
  </code></pre>
  
  <p>I should note that the values of the string range from <code>1</code> to <code>10</code> and from <code>A</code> to <code>J</code>.
  Also this is the call of the function from main; it gets a string from a file and assigns it to a struct called submarine.</p>
  
  <pre><code>while(fgets(buffer,100,fptr))
  {
      if(isalpha(buffer[0]))
      {
          token=strtok(buffer,"-");
          start=TranslateCoordinate(token);
          token=strtok(NULL,"\n");
          end=TranslateCoordinate(token);
          s=Makesub(start,end,9);
          P1list=Add_to_list(s,P1list);
      }
  }
  </code></pre>
  
  <p>The struct itself as written in the source:</p>
  
  <pre><code>struct Point_s
  {
      int x;
      int y;
  };
  </code></pre>
  
  <p>The typedef that is written in the header: </p>
  
  <pre><code>typedef struct Point_s* Point;
  </code></pre>