title: Big array initializations issues in C
body: <p>need your help in three questions (which regard more or less to the same subject I guess).</p>
  
  <p>1)  I have a LARGE array of int's which is initialized in the following manner:</p>
  
  <pre><code>int arr [] = {.....}; // allot of values !!
  </code></pre>
  
  <p>within the program  there is only one function that "uses" this array for "read only" operations.
  We have two options regarding this array:</p>
  
  <p>a) Declare that array as a local array in the that function.</p>
  
  <p>b) Declare it as a global array outside of this function.</p>
  
  <p>How will the image file of the program  will be modified for both these cases?</p>
  
  <p>How will the program speed of execution will be modified ?</p>
  
  <p>2) Regarding the TI MSP430 micro controller:</p>
  
  <p>I have in my program a very large global array of C style string as follows:</p>
  
  <pre><code>char *arr [] = {"string 1","string2",.......}; // allot of strings
  </code></pre>
  
  <p>Usually, at the beginning of the main program I use a command to stop the "Watch Dog" timer.
  As I see it , it is needed , for instance, to cases where there is , for example, a very large array that needs to be initialized ....so my question is:</p>
  
  <p>Does it the case? (having the large array of "strings" ) ? When does the array gets initialized?</p>
  
  <p>Will it matter if I declare it in a different manner? </p>
  
  <p>3) How (if so) the answer to questions 1 &amp; 2  will be different in C++? </p>
  
  <p>Thanks allot , 
  Guy.</p>