title: Char * (pointer) function
body: <p>I need to pass in a char * in a function and have it set to a cstring value. I can properly set it as a string in the function, but it doesn't seem to print out correctly in the function that called the char * function in the first place.</p>
  
  <pre><code>int l2_read(char *chunk,int length)
  {
      chunk = malloc( sizeof(char) * length);
  
      int i;
      for(i = 0; i &lt; length; i++){
         char c;
         if(read(&amp;c) &lt; 0) return (-1); // this gets a single character
            chunk[i] = c;
      }
  
      printf("%s",chunk); // this prints fine
      return 1;
  }
  
  
      // main
      char *string;
      int value = l2_read(string,16);
      printf("%s",chunk); // prints wrong
  </code></pre>