title: What is the meaning of the parameters to glShaderSource?
body: <p>I've tried my hardest to understand the functions of OpenGL in-depth, but I have an issue with <code>glShaderSource</code>'s parameters:</p>
  
  <pre><code>void glShaderSource(
    GLuint shader,
    GLsizei count,
    const GLchar * const * string,
    const GLint * length);
  </code></pre>
  
  <p>I'm confused about the last two parameters. What do they actually mean in C++? Does it mean I give it a string, a const char or pointer of a string if thats even possible? And why?</p>