title: C - fopen() doesn't work (returns null pointer)
body: <p>Why does fopen() return a null pointer?</p>
  
  <p>I'm trying to save the parameters after BRIDGE and after LAN (respectively 4 and 5) in cont_br and cont_lan, but fopen() doesn't work...</p>
  
  <pre><code>#include &lt;string.h&gt;
  #include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  #include &lt;errno.h&gt;
  
  void read_file(char file[]) {
  
      char cont, *str, *ctrl_str;
      int x=0, cont_br, cont_lan;
  
      FILE *file_stream;
  
      if (file_stream = fopen(file, "r")) {
  
          while( !feof(file_stream) ) { //Check the file dimension
              fgetc( file_stream );
              x++;
          }
          x--;
          str = (char*) malloc(sizeof(char) * x+1);
          fseek(file_stream, 0, SEEK_SET); // Return at the beginning of the file
          fread(str, x, 1, file_stream);
          char delims[] = "#";
          char *result = NULL;
          result = strtok( str, delims);
          while (result != NULL) {
              if (result == "BRIDGE") { //Check the different "blocks" in the txt file
                  result = strtok(NULL, delims);
                  cont_br = atoi(result);
                  printf("Number of bridges: %d\n", cont_br);
              }
              result = strtok(NULL, delims);
              if (result == "LAN") {
                  result = strtok(NULL, delims);
                  cont_lan = atoi(result);
                  printf("Number of Lan: %d\n", cont_lan);
              }
              break; //
          }
      }
      printf("Error: can't open the file! errno: %d\n", errno);
      fclose(file_stream);
  }
  
  int main() {
      char file[] = "Config.txt";
      read_file(file);
      return 0;
  }
  </code></pre>
  
  <p>And this is the Config.txt file:</p>
  
  <pre><code>BRIDGE#4#
  LAN#5#
  192.168.0.1
  192.168.1.1
  192.168.2.1
  192.168.3.1
  192.168.4.1
  #
  LINK#
  B1:3000,L1
  B1:3001,L2
  B1:3002,L3
  B2:3000,L4
  B2:3001,L5
  B3:3000,L1
  B4:3000,L3
  B5:3000,L2
  B2:3002,L3
  </code></pre>