title: main() parameters mess up array declaration
body: <p>I've been writing a C study program on encryption and met an unexpected problem:</p>
  
  <p>When I include parameters into <code>main()</code> function (as <code>int main(int argc, char* argv[])</code>) and try to declare a separate array of chars in my code (<code>char array[2] = {'a','b'};</code>), which has nothing to do with <code>main()</code> arguments, that array somehow gets length of 8 instead of 2 and some junk is added to it when I try to print it out (e.g. <code>ab ?iQ?</code>).</p>
  
  <p>Whereas if I declare <code>main()</code> without any parameters (<code>int main()</code>), the declared char array behaves normally: gets size of 2 and prints out like <code>ab</code>.</p>
  
  <p>Do parameters in <code>main()</code> function set limits on minimum size of arrays in code?</p>